[['captcha'], 'captcha', 'required'],
如果我这样做,它说:
设置未知属性:yii \ captcha \ CaptchaValidator :: 0
但如果我这样做,它可以正常工作:
['captcha', 'captcha'],
['captcha', 'required'],
您认为问题是什么?为什么我不能合并规则?
答案 0 :(得分:3)
因为在Yii中,规则表示为这样的数组:
['field1', 'validator1', 'valProp1'=>'valProp1Value', 'valProp2'=>'valProp2Value', ...]
所以这个数组只适用于1个验证器,但是多个字段和valProp1,valProp2都是内置的Validator Class属性。一些例子是:
['field1', 'email','skipOnEmpty'=>true]
在yii\validators\EmailValidator
字段上设置field1
,并将电子邮件验证程序的skipOnEmpty
属性设置为true
为了组合规则,您需要以每个验证器的每个规则分开的格式编写,如下所示:
['captcha','captcha'],
['captcha','required']