Goweb開發之Iris框架實戰 刪除記錄功能

2021-10-08 09:48:00 字數 1638 閱讀 2735

上節內容我們分析了新增商鋪記錄的功能,今天我們繼續來開發刪除記錄功能。在本節內容中,我們演示刪除商家列表和食品列表記錄。

在小么雞文件或者瀏覽器中開發者工具中,我們都可以找到刪除商家記錄和刪除食品列表記錄的介面,具體的介面功能如下:

刪除商家

刪除食品

我們在控制器中,採用配置路由的方式來實現該刪除功能的路由解析,之前講過的beforeactivation方法,會在控制器controller中解析請求時首先執行,並進行相應的方法解析,我們定義如下的刪除方法解析:

func (cc *categorycontroller) beforeactivation(a mvc.beforeactivation) ", "getcategorybyshopid")

​ //獲取全部的食品種類

a.handle("get", "/v2/restaurant/category", "getallcategory")

​ //新增商鋪記錄

a.handle("post", "/addshop", "postaddshop")

​ //刪除商鋪記錄

a.handle("delete", "/restaurant/", "deleterestaurant")

​ //刪除食品記錄

a.handle("delete", "/v2/food/", "deletefood")

}​

定義完成如上的請求url和對應的方法後,完整的controller中實現請求處理的兩個方法如下:

func (cc *categorycontroller) deleterestaurant() mvc.result ,}}

delete := cc.service.deleteshop(shopid)

if !delete ,

}} else ,

}}}​

func (cc *categorycontroller) deletefood() mvc.result ,}}

delete := cc.service.deletefood(foodid)

if !delete ,

}} else ,}}

}​

如上已經完成了路由的解析設定和請求處理方法,我們需要在service中實現更新資料庫的方法,刪除食品並更新資料庫和刪除商鋪並更新資料庫的兩個方法如下:

func (cs *categoryservice) deleteshop(restaurantid int) bool 

_, err := cs.engine.where(" shop_id = ? ", restaurantid).cols("dele").update(&shop)

if err != nil

return err == nil}​

func (cs *categoryservice) deletefood(foodid int) bool

_, err := cs.engine.where(" id = ? ", foodid).cols("del_flag").update(&food)

if err != nil

return err == nil

}

Goweb開發之Iris框架實戰 刪除記錄功能

上節內容我們分析了新增商鋪記錄的功能,今天我們繼續來開發刪除記錄功能。在本節內容中,我們演示刪除商家列表和食品列表記錄。在小么雞文件或者瀏覽器中開發者工具中,我們都可以找到刪除商家記錄和刪除食品列表記錄的介面,具體的介面功能如下 刪除商家 刪除食品 我們在控制器中,採用配置路由的方式來實現該刪除功能...

LCLFramework框架之開發約束

entity編寫 1 所有的實體類都必須繼承domainentity 2 所有的表都必須有 id 3 所有表的關係字段必須是id serializable public classuser domainentity 具體的entity關係編寫請檢視lclframework實體關係 服務編寫 seri...

Hadoop框架之 Mapreduce開發總結

在編寫mapreduce程式時,需要考慮如下幾個方面 1 預設使用的實現類是 textinputformat 2 textnputformat的功能邏 輯是 次讀一行文字,然後將該行的起始偏移量作為key,行內容作為value返回。3 keyvalue textinputformat每一行均為一 條...