gohouse/gorose

Where编译时bool参数的问题

Closed this issue · 0 comments

func (dba *Orm) Where(args ...interface{}) IOrm {
if len(args) == 0 ||
t.New(args[0]).Bool() == false {
return dba
}
t.New(args[0]).Bool() == false

当传入单一参数false的时候,期望的是否定条件,即查不到任何记录就对了
WHERE false

这个时候不应该省略 false

而当传入单一参数true的时候,倒是可以省略的
WHERE true and id = 1 等价于 WHERE id = 1

目前可以传入 Where("1 = 0") 来代替false