谁能有人建议如何"on" => "insert"在yii2中使用验证?我用过
array('field_name', 'required', 'on'=>'insert')
Run Code Online (Sandbox Code Playgroud)
在Yii1但在yii2中它不会检查我是否设置
['field_name', 'required', 'on'=>'insert']
Run Code Online (Sandbox Code Playgroud)
.有什么问题可以解释一下吗?提前致谢.
soj*_*oju 12
您应该在验证之前设置模型的场景:
$model->scenario = 'insert';
Run Code Online (Sandbox Code Playgroud)
从Yii2开始:
默认情况下,模型仅支持名为的单个方案
default
阅读更多:http://www.yiiframework.com/doc-2.0/guide-structure-models.html#scenarios
首先定义场景:
// scenario is set as a property
$model->scenario = 'insert';
Run Code Online (Sandbox Code Playgroud)
或者
// scenario is set through configuration
$model = new User(['scenario' => 'insert']);
Run Code Online (Sandbox Code Playgroud)
然后您可以将规则指定为:
// for single field
['field_name', 'required', 'on' => 'insert'],
// for multiple fields
[['field_name1','field_name2'], 'required', 'on' => 'insert'],
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请查看:http : //www.yiiframework.com/doc-2.0/guide-structure-models.html#validation-rules
| 归档时间: |
|
| 查看次数: |
5173 次 |
| 最近记录: |