【发布时间】:2019-12-09 08:18:54
【问题描述】:
我正在尝试在 Yii2 框架中验证一个简单的表单。 模型的验证方法是 -
/**
* {@inheritdoc}
*/
public function rules()
{
return array(
array('name', 'required'),
// ... other rules
);
}
当我尝试提出请求时,它说 -
array(1) { ["name"]=> array(1) { [0]=> string(21) "Name cannot be blank." } }
但问题是我在请求中发送名称字段( POST )。但是在提供 name field 之后,它给出了一个错误。
如果我为request 执行var_dump,它会显示名称字段在请求中。
这里是请求数据的var_dump 和验证错误。 -
array(1) { ["name"]=> string(6) "distro" } array(1) { ["name"]=> array(1) { [0]=> string(21) "Name cannot be blank." } }
提前谢谢你。
【问题讨论】:
-
您能否在控制器中添加您的操作代码,以便我们查看您如何设置/验证数据?
-
在验证之前尝试
$model->name = Yii::$app->request->post("username"); -
你能附上控制器的代码>动作以获得更好的解决方案
-
您必须在使用
$model->load(Yii::$app->request->post())方法验证之前将请求的数据加载到模型中。此方法将帮助您将请求的数据映射到模型。
标签: yii yii2 yii2-advanced-app