Yii,单一关系中的双重标准


Yii, dual criteria in single relation

我对中相同字段的第二个标准有问题

$criteria->with = array( 'Rel1',
                         'Rel1.Rel2' => ['alias'=>'attrType']);
$criteria->condition = 'Type=:type';
// first condition with Re1.value and Rel2.name - without second works fine
$criteria->addCondition("attrType.name='start' AND Rel1.value <= NOW()");
// second criteria with Re1.value and Rel2.name
$criteria->addCondition("attrType.name='end' AND Rel1.value > NOW()");
$criteria->order = 'Rel1.value DESC';
$criteria->params = [':type'=> 22];
$result = SomeModel::model()->findAll($criteria);

没有第二个条件,我有多个记录的开始和结束名称。如果我在第二个条件下运行,我找到了0条记录。请帮助:/

您的混合条件看起来像:

attrType.name='start' AND attrType.name='end' AND 
    Rel1.value <= NOW() AND Rel1.value > NOW()

并且该部分Rel1.value <= NOW() AND Rel1.value > NOW()总是假