0
我在我的項目中使用GORM,我想創建類似DB管理頁面的東西。GORM Golang如何優化此代碼
要加載記錄我發送使用參數GET:
category: "name", // database table name
在服務器上我有下面的代碼:
func LoadItems(db *gorm.DB, category string) interface{} {
var items interface{}
loadItems := func(i interface{}) {
err := db.Find(i).Error
if err != nil {
panic(err)
}
items = i
}
switch category {
case "groups":
var records []*models.Groups
loadItems(&records)
case "departments":
var records []*models.Departments
loadItems(&records)
case .....
........
}
return items
}
是否有可能取代switch
因爲我有10張表和記錄編輯後我發送新的數據到服務器,在那裏我不得不使用switch
在其他功能來保存它。
嘿@smnpl,你有沒有例子如何做到這一點? (我的意思是通用的接口和映射)我創建的接口,但所有的值都是指針,gorm需要實例。我無法將實例分配爲映射值(類型錯誤)。 – rtm7777