2
我有一个关于Yii验证的问题。我有一个下拉菜单,其选项是Y和N.如果用户选择Y,用户必须解释他为什么选择Y,因此textArea框将变为必需。Yii有条件验证
我的规则代码如下。
array('explain', 'check', 'trigger'=>'med_effects'),
检查是用于验证
public function check($attribute, $params)
{
if($this->$params['trigger'] == 0 && $this->$attribute == '') {
$this->addError($attribute, 'Explain the effects of the medicine');
}
}
为$this->$params['trigger']
的值不会改变我的功能。我假设是因为保存的值为0(Y),即使用户选择N也不会改变。我如何确定用户选择表单时选择了哪个选项?
谢谢。
我对如何,这将帮助我,因为这不是我在问什么毫无头绪。 – Koralarts
当我遇到这种情况时,我在模型中插入了下拉值,并在我的规则方法中检查了是否($ this-> property =='Y')$ rules [] = array(....)/ /验证原因。它的作品,不是吗? – armandomiani
所以当你第一次创建模型的实例时,你传入了一个变量? '新模型($ something)'? – Koralarts