如何验证Yii2动态模型

如何验证Yii2动态模型,yii2,Yii2,我正在处理Yii2,并希望动态验证该字段,就像在未选择其他字段时验证一样 我在Yii2文档中找到了以下代码: ['state', 'required', 'when' => function($model) { return $model->country == 'USA'; }] 但问题是我使用的是Yii2动态模型。如何在动态模型中实现上述相同的功能。与常规模型一样: $model = new \yii\base\DynamicModel([ 'name', 'c

我正在处理Yii2,并希望动态验证该字段,就像在未选择其他字段时验证一样

我在Yii2文档中找到了以下代码:

['state', 'required', 'when' => function($model) {
    return $model->country == 'USA';
}]
但问题是我使用的是Yii2动态模型。如何在动态模型中实现上述相同的功能。

与常规模型一样:

$model = new \yii\base\DynamicModel([
    'name', 'country', 'state'
]);

$model->addRule([
    'state', 'required', 'when' => function($model) {
        return $model->country == 'USA';
    }
])

不清楚如何初始化需要在动态模型上调用的动态模型,例如,
$model->addRule(['field\u name','string',['max'=>255]])
,然后调用validate
$model->validate()
,这将调用验证并显示错误,您需要显示代码。你正在工作。