search rule 的问题

Rule设定如下:

array(‘id, owner_id, category_id, title, source, source_url, tags, has_attachment, published_at, is_recommend, is_picked, is_active, is_passed’, ‘safe’, ‘on’ => ‘search’)

记得如果我去掉 id 的话,那么 id 就不参与搜索了,但是目前情况不是这样,即使去掉,也同样的参与了搜索。

Yii 版本为 1.1.6

这个model的rule验证规则只是在表单输入提交的时候才会验证

如果你在模型类的search方法中,直接查询id的话


 $criteria=new CDbCriteria;


        $criteria->compare('id',$this->id);

	$criteria->compare('title',$this->title,true);


	return new CActiveDataProvider(get_class($this), array(

		'criteria'=>$criteria,

	));

这种情况就和验证规则无关了,不知道楼上的兄弟是不是这种情况。

刚才我试过了,如果表单有id这个文本框的话,那么去掉search场景的id验证规则,就会无效,我用的也是1.1.6版本。

我现在的情况是表单有id这个文本框,去掉search场景的id验证规则,依旧可以通过id 查询。

这种情况,太不寻常了!

是的。我也感到很奇怪,不知道是哪里出问题了。

顶一顶 :rolleyes: