yii2自动验证.怎么添加只有添加记录时才生效的规则
答案:1 悬赏:40 手机版
解决时间 2021-01-07 16:16
- 提问者网友:谁的错
- 2021-01-06 20:45
yii2自动验证.怎么添加只有添加记录时才生效的规则
最佳答案
- 五星知识达人网友:痴妹与他
- 2021-01-06 22:16
条件:①、有两个字段分别是A和B ②、A有两个值分别是1和2
需求是:当用户选择的A的值等于1的时候,B的值必须填写,当A的值等于2的时候,B的值不写也没关系。其中A必选。
首先在其关联model上加上下面这句规则
public function rules()
{
return [
[['B'], 'requiredByASpecial'],
];
}
然后在该model里面去实现requiredByASpecial方法即可
public function requiredByASpecial($attribute, $params)
{
if ($this->A== 1)
{
if ($this->B=== '')
$this->addError($attribute, "B的值不可以为空.");
}
}
上面的意思就是说当A等于1且B的值为空时,返回错误信息"B的值不可以为空"。
需求是:当用户选择的A的值等于1的时候,B的值必须填写,当A的值等于2的时候,B的值不写也没关系。其中A必选。
首先在其关联model上加上下面这句规则
public function rules()
{
return [
[['B'], 'requiredByASpecial'],
];
}
然后在该model里面去实现requiredByASpecial方法即可
public function requiredByASpecial($attribute, $params)
{
if ($this->A== 1)
{
if ($this->B=== '')
$this->addError($attribute, "B的值不可以为空.");
}
}
上面的意思就是说当A等于1且B的值为空时,返回错误信息"B的值不可以为空"。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯