7
自定义 CURD 模板时,希望能多加一个表示数据表主键的模板指令来自定义一些方法。
自定义 CURD 模板时,希望能多加一个表示数据表主键的模板指令来自定义一些方法。
举个例子哈
你好,我现在有两个用途。以下加粗的代码是没有模板指令可以用的。
一个是 postgres 插入数据后需要返回插入的 ID
query := fmt.Sprintf("insert into %s (%s) values ($1, $2, $3) returning **id**", m.table, appSettingRowsExpectAutoSet)
var ret orm.Result
err := m.conn.QueryRow(&ret, query, data.Name, data.Value, data.CreatedAt)
return ret, err
另一个是只更新指定的列
func (m *defaultAppSettingModel) Updates(data AppSetting) error {
// 只更新非零值字段,且忽略主键字段
fields, values := orm.GetUpdateFieldValues(data, "", true, "id")
query := fmt.Sprintf("update %s set %s where id = $1", m.table, fields)
args := append([]interface{}{data.**Id**}, values)
_, err := m.conn.Exec(query, args...)
return err
}