推动不识别阵列

时间:2013-11-27 16:41:50

标签: php propel

我的查询类之一(简化)中有自定义函数:

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

1 个答案:

答案 0 :(得分:0)

我最终发现了错误。 DB中的列类型为tinyint(1),它不存在,只是一个字节的整数(参见the relevant mysql docs

推进反向工程设计为布尔值,而不是整数。改变它并重新生成基类解决了这个问题。