update.go 1023 B

12345678910111213141516171819
  1. package template
  2. const (
  3. // Update defines a template for generating update codes
  4. Update = `
  5. func (m *default{{.upperStartCamelObject}}Model) Update(ctx context.Context, data *{{.upperStartCamelObject}}) error {
  6. {{if .withCache}}{{.keys}}
  7. _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  8. query := fmt.Sprintf("update %s set %s where {{.originalPrimaryKey}} = {{if .postgreSql}}$1{{else}}?{{end}}", m.table, {{.lowerStartCamelObject}}RowsWithPlaceHolder)
  9. return conn.ExecCtx(ctx, query, {{.expressionValues}})
  10. }, {{.keyValues}}){{else}}query := fmt.Sprintf("update %s set %s where {{.originalPrimaryKey}} = {{if .postgreSql}}$1{{else}}?{{end}}", m.table, {{.lowerStartCamelObject}}RowsWithPlaceHolder)
  11. _,err:=m.conn.ExecCtx(ctx, query, {{.expressionValues}}){{end}}
  12. return err
  13. }
  14. `
  15. // UpdateMethod defines an interface method template for generating update codes
  16. UpdateMethod = `Update(ctx context.Context, data *{{.upperStartCamelObject}}) error`
  17. )