Yii2中的场景(scenario)和验证规则(rule)详解
发布时间:2021-04-01 06:23:40 所属栏目:PHP教程 来源:网络整理
导读:前言 场景,顾名思义,就是一个情景,一种场面。在yii2中也有场景,这个场景跟你所理解的场景含义差不多。 和用户有交互的系统必不可少的功能包括收集用户数据、校验和处理。实际业务中,往往还需要将数据进行持久化存储。出于安全考虑,开发人员应当牢牢把
另外一种更清晰定义安全属性和活跃属性的做法是重写scenarios方法。scenarios方法返回一个数组,数组的键是场景名称,值是活跃属性集合(包饭安全属性)。例如student表的可能实现如下: ["!user_id","grade","class",xxxx],"update" => ["grade",]; }默认情形下(学生报名),年级、班级这些信息是安全属性,但user_id不是,只能在程序内部赋值,并在插入数据时被校验;在修改信息时,user_id不是活跃属性,既不能被批量赋值,也不需要校验(事实上它不应该改变)。 scenarios方法只能定义活跃属性和安全属性,无法定义校验规则,需要和rules配合使用。 总结金肯定义完善的数据校验规则 业务复杂时定义多个场景,仔细为每个场景定义安全属性和校验规则 优先使用rules;属性较多、rules复杂时,可以配合scenarios方法迅速理清安全属性和活跃属性 好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持。 参考
(编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |