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