$model->load(Yii::$app->request->post()的作用是什么? [ 2.0 版本 ]
放在if里面判断,成功代表的是有值,还是只是代表有post值,还是代表有post值,并通过了验证
zhoutengfu 补充于 2016-10-20 17:05
$model->load()的作用是什么呢?
最佳答案
-
成功代表的是有值。而你的值是request->post()获取的,所以代表的是有post值。
load()的作用是批量填充模型。因为你会在load前面发现 $model = new Model。此时的 $model 是 new 出来的,是新的,只是个骨头架子,纸老虎,所以它迫切需要一些值来填充自己,否则它除了能为前端 ActiveForm 提供一些JS验证外,屁用没有。而此时,load() 应运而生。
而解决温饱飞黄腾达之后,Yii 会审视 $model。这小子做的这些事符不符合我给他定的规矩。于是Yii 根据 $model 调用了你接下来看到的 validate(),然后不合规矩就干掉他,即使他是苍蝇或者老虎。所以验证部分 load() 不会去做,而是交给了 validate()。就像贪官能发现自己是贪官吗?
其他 5 个回答
-
18706126747 回答于 2016-10-20 15:58 举报
获取post提交的值 并调用setAttributes()给model里的属性赋值
zhoutengfu
注册时间:2016-05-08
最后登录:2018-01-22
在线时长:11小时3分
最后登录:2018-01-22
在线时长:11小时3分
- 粉丝2
- 金钱75
- 威望0
- 积分185