我有以下代码:
$somethingArray = array( 3, 4, 5 );
$myObjects = MyObjQuery::create()
->filterBySomething( $somethingArray )
->filterById( array( 'min' => $minMyObjID ) )
->orderByObjTimestamp('DESC')
->find();
根据 Propel 文档,应该会生成一个 SQL 命令,该命令最终会检查“某物”是否在 somethingArray 数组中,并且 id 是否 > $minMyObjID。但是,id 是 IN 而不是 >。
如果我改为执行以下操作:
$myObjects = MyObjQuery::create()
->filterBySomething( $somethingArray )
->where( 'id > ' . $minMyObjID )
->orderByObjTimestamp('DESC')
->find();
生成的 SQL 是我所期望的。这是一个 Propel 错误,还是我在涉及 filterByXXX 参数时误解了文档?