我的查询类之一(简化)中有自定义函数:
public function applyStandardFilters($currentState) {
return $this->useIdbAdsQuery()
->filterByCurrentState($currentState)
->endUse();
}
当我传递一个数组
currentState: Array
(
[0] => 4
[1] => 5
)
生成以下SQL:
AND idb_ads.current_state=1
而不是
AND idb_ads.current_state IN (4,5)
我该如何解决这个问题?
编辑:版本1.7
答案 0 :(得分:0)
我最终发现了错误。 DB中的列类型为tinyint(1)
,它不存在,只是一个字节的整数(参见the relevant mysql docs。
推进反向工程设计为布尔值,而不是整数。改变它并重新生成基类解决了这个问题。