【发布时间】:2014-07-21 08:47:02
【问题描述】:
我有一个模型User,它具有type 和payment_id 属性。
type == 1 时需要payment_id 或 type == 3,但type == 2 时可能为空
在我的表单中,type 是一个下拉列表,包含值 1 2 和 3。 payment_id 是一个常规文本字段。选择值 2 时,仍会提示我输入 payment_id。
我根据yii2 docs尝试过的代码:
class User
{
public function rules()
{
return [
[['payment_id', 'type'], 'integer'],
[
['payment_id'], 'required', 'when'=>function ($model) {
return ($model->type == 1 || $model->type == 3);
}
],
...
];
}
...
}
但即使type == 2(在下拉列表中),我仍然收到错误Payment ID may not be empty。
谁能指出我的错误?
谢谢!
【问题讨论】:
标签: php validation yii yii2