現在、私のコードはそのように見えます
$criteria = new CDbCriteria();
$criteria->compare('visible', 1);
$criteria->compare('branch_id', $this->id);
私がしたいのは、そのようなことをすることです
`branch_id`='$this->id' OR `branch_id` is NULL
compare
関数でそれを行う方法は?
だから多分あなたはしたいです
$idCrit = new CDbCriteria();
$idCrit->compare('branch_id', $this->id);
$idCrit->addCondition('branch_id is NULL', 'OR');
$criteria->mergeWith($idCrit);
$criteria
他のすべてのものはどこにありますか?
さらに読む;
$operator
(引数を具体的に見てください。)
これを使用してください:
$criteria->compare('branch_id', array($this->id, null));
コードでわかるように:
https://github.com/yiisoft/yii/blob/1.1.14/framework/db/schema/CDbCriteria.php#L414
「値が配列の場合、比較は配列内のいずれかの値の完全一致によって行われます。配列。」
これは私のために働く:
$criteria->compare('field', array(NULL));