package models type Modules struct { ProcName string `gorm:"column:proc_name;not null;default:''" json:"proc_name"` //模块名称 NameZh string `gorm:"column:name_zh;not null;default:''" json:"name_zh"` //中文名称 } func (Modules) TableName() string { return "t_modules" } func (a *Modules) FindAll() (rows []Modules, err error) { if err := db.Table(a.TableName()).Find(&rows).Error; err != nil { return nil, err } return rows, nil } func (a *Modules) FindAllMap() map[string]string { m := make(map[string]string) list, err := a.FindAll() if nil == err { for _, item :=range list { m[item.ProcName] = item.NameZh } } return m } func (a *Modules) Insert() bool { count := 0 result := db.Table(a.TableName()).Where("proc_name=?", a.ProcName).Count(&count) if count > 0 { return false } result = db.Table(a.TableName()).Create(&a) if result.Error !=nil { return false } return result.RowsAffected>0 }