Added args to delete query builder
* Fixed delete query builder WHERE bug * Finished Delete template tests
This commit is contained in:
parent
c34f09aa55
commit
9ede42c577
3 changed files with 10 additions and 6 deletions
|
@ -79,18 +79,21 @@ func buildSelectQuery(q *Query) (*bytes.Buffer, []interface{}) {
|
||||||
|
|
||||||
func buildDeleteQuery(q *Query) (*bytes.Buffer, []interface{}) {
|
func buildDeleteQuery(q *Query) (*bytes.Buffer, []interface{}) {
|
||||||
buf := &bytes.Buffer{}
|
buf := &bytes.Buffer{}
|
||||||
|
var args []interface{}
|
||||||
|
|
||||||
buf.WriteString("DELETE FROM ")
|
buf.WriteString("DELETE FROM ")
|
||||||
fmt.Fprintf(buf, `"%s"`, q.table)
|
fmt.Fprintf(buf, `"%s"`, q.table)
|
||||||
|
|
||||||
if len(q.where) > 0 {
|
if len(q.where) > 0 {
|
||||||
|
buf.WriteString(" WHERE ")
|
||||||
for i := 0; i < len(q.where); i++ {
|
for i := 0; i < len(q.where); i++ {
|
||||||
buf.WriteString(fmt.Sprintf(` WHERE %s`, q.where[i].clause))
|
buf.WriteString(fmt.Sprintf("%s", q.where[i].clause))
|
||||||
|
args = append(args, q.where[i].args...)
|
||||||
if i != len(q.where)-1 {
|
if i != len(q.where)-1 {
|
||||||
if q.where[i].orSeperator {
|
if q.where[i].orSeperator {
|
||||||
buf.WriteString(` OR `)
|
buf.WriteString(" OR ")
|
||||||
} else {
|
} else {
|
||||||
buf.WriteString(` AND `)
|
buf.WriteString(" AND ")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -98,7 +101,7 @@ func buildDeleteQuery(q *Query) (*bytes.Buffer, []interface{}) {
|
||||||
|
|
||||||
buf.WriteByte(';')
|
buf.WriteByte(';')
|
||||||
|
|
||||||
return buf, nil
|
return buf, args
|
||||||
}
|
}
|
||||||
|
|
||||||
func buildUpdateQuery(q *Query) (*bytes.Buffer, []interface{}) {
|
func buildUpdateQuery(q *Query) (*bytes.Buffer, []interface{}) {
|
||||||
|
|
|
@ -53,7 +53,6 @@ func (o {{$varNameSingular}}Slice) DeleteAll() error {
|
||||||
if o == nil {
|
if o == nil {
|
||||||
return errors.New("{{.PkgName}}: no {{$tableNameSingular}} slice provided for delete all")
|
return errors.New("{{.PkgName}}: no {{$tableNameSingular}} slice provided for delete all")
|
||||||
}
|
}
|
||||||
|
|
||||||
return o.DeleteAllX(boil.GetDB())
|
return o.DeleteAllX(boil.GetDB())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -65,7 +65,9 @@ func Test{{$tableNamePlural}}Delete(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// test DeleteAll slice function
|
// test DeleteAll slice function
|
||||||
err = o.DeleteAll()
|
if err = o.DeleteAll(); err != nil {
|
||||||
|
t.Errorf("Unable to objSlice.DeleteAll(): %s", err)
|
||||||
|
}
|
||||||
|
|
||||||
// Check number of rows in table to ensure DeleteAll was successful
|
// Check number of rows in table to ensure DeleteAll was successful
|
||||||
c, err = {{$tableNamePlural}}().Count()
|
c, err = {{$tableNamePlural}}().Count()
|
||||||
|
|
Loading…
Add table
Reference in a new issue