2016-03-24 11:36:28 4179次浏览 2条回答 1 悬赏 50 金钱

比如说我有一个文章模型 title content auther 这三个字段是必填的
然后我还有一些其他的非必填字段 time isPublish 等等
我在\models\Post.php这个文件里面添加了规则

public function rules()
    {
        return [
            [['title', 'content', 'isPublish'], 'required']
        ];
    }

要求这三个字段必填
但是当我给其他属性赋值的时候(比如time字段)再 model->save()
只会保存验证的 三个字段 其余的字段全部都保存不进去 为什么

最佳答案

  • 回答于 2016-03-24 15:41 举报

    不批量赋值可以保存吧。。。

    1 条回复
    回复于 2016-03-24 16:00 回复

    单个值提交确实没试过,也没有细看源码。刚开始测试登录的时候,发现$rememberMe一直接收到。所以才发现必须要在rules中设定。
    个人认为,yii这么做,是为了安全,他可能认为不验证的参数都是不安全的参数,最可怕的当然就是sql注入,如果不进行验证,恶意的客户端行为极有可能做到这一点

您需要登录后才可以回答。登录 | 立即注册
huaixiaoya
副总裁

huaixiaoya 湖北武汉

注册时间:2014-06-16
最后登录:2017-03-06
在线时长:41小时5分
  • 粉丝12
  • 金钱4745
  • 威望0
  • 积分5155

热门问题