delete.go 1.1 KB

123456789101112131415161718192021222324
  1. package template
  2. const (
  3. // Delete defines a delete template
  4. Delete = `
  5. func (m *default{{.upperStartCamelObject}}Model) Delete(ctx context.Context, {{.lowerStartCamelPrimaryKey}} {{.dataType}}) error {
  6. {{if .withCache}}{{if .containsIndexCache}}data, err:=m.FindOne(ctx, {{.lowerStartCamelPrimaryKey}})
  7. if err!=nil{
  8. return err
  9. }
  10. {{end}} {{.keys}}
  11. _, err {{if .containsIndexCache}}={{else}}:={{end}} m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  12. query := fmt.Sprintf("delete from %s where {{.originalPrimaryKey}} = {{if .postgreSql}}$1{{else}}?{{end}}", m.table)
  13. return conn.ExecCtx(ctx, query, {{.lowerStartCamelPrimaryKey}})
  14. }, {{.keyValues}}){{else}}query := fmt.Sprintf("delete from %s where {{.originalPrimaryKey}} = {{if .postgreSql}}$1{{else}}?{{end}}", m.table)
  15. _,err:=m.conn.ExecCtx(ctx, query, {{.lowerStartCamelPrimaryKey}}){{end}}
  16. return err
  17. }
  18. `
  19. // DeleteMethod defines a delete template for interface method
  20. DeleteMethod = `Delete(ctx context.Context, {{.lowerStartCamelPrimaryKey}} {{.dataType}}) error`
  21. )