如何在 rules() 方法中获取验证


How to get the validation in rules() method?

仅供解释,这里是表格

create table test(mark int,item1 varchar(128),item2 varchar(128));
如果 mark==1 则

item1 需要一个值,如果 mark==2 则 item2 需要一个值

在 rules(( 方法中,我如何获取此规则?

在模型中创建自定义验证函数,像这样:

public function requiredMark($attributes,$params)
{
    if ($this->mark == 1 && $this->item1==null)
        $this->addError('item1','Item 1 is required');
    elseif ($this->mark == 2 && $this->item2==null)
        $this->addError('item2','Item 2 is required');
}

或者你在问别的事情?

您需要扩展 validate(( 方法来执行此操作,并手动添加错误。我总是回到这个文档以获取验证器选项(以后可能会有用(

http://yii.googlecode.com/files/yii-1.1.0-validator-cheatsheet.pdf