Yii中模型场景的示例分析
发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,这篇文章将为大家详细讲解有关Yii中模型场景的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言在Yii中模型字段验证有一个场景的概念,可以在不同的场景下设
千家信息网最后更新 2024年11月20日Yii中模型场景的示例分析
这篇文章将为大家详细讲解有关Yii中模型场景的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
前言
在Yii中模型字段验证有一个场景的概念,可以在不同的场景下设置不同的验证规则,在Yii中的场景默认为default,简单实现如下
下面我以用户表,表中字段为user_name,password
简单规则如下
public function rules() { return [ [['user_name', 'password'], 'required'], [['user_name', 'password'], 'string', 'max' => 255], ];}
一:
如果我们需要在新增时验证user_name和password两个字段,在更新时只验证user_name字段
这时候我们可以在模型中覆盖yiibaseModel::scenarios()
方法来自定义行为
public function scenarios(){ return [ 'create' => ['user_name', 'password'],//create表示新增场景 'update' => ['user_name'],//update表示更新场景 ];}
根据上面设置的场景规则,我们只需要在我们新增和更新时设置为指定的场景即可
// 场景作为属性来设置$model = new User;$model->scenario = 'create';// 场景通过构造初始化配置来设置$model = new User(['scenario' => 'create']);
根据如上就可以实现在不同的场景下验证指定的字段
二:
我们可以在规则rule中使用on属性来设置不同的场景
public function rules() { return [ [['id'], 'integer'], [['user_name'], 'required'], [['password'], 'required', 'on' => 'create'] [['user_name', 'password'], 'string', 'max' => 255], ];}
根据如上在create场景下password字段必填
三:
使用yiibaseModel::validate()
来验证接收到的数据
$model = new User();$model->validate(['user_name'])
使用validate方法验证user_name,验证通过返回true,否则返回false
关于"Yii中模型场景的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
场景
验证
字段
模型
不同
规则
篇文章
更新
示例
分析
如上
属性
方法
更多
不错
实用
两个
内容
前言
数据
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
河南省公安网络安全
直播软件开发工具
服服务器磁盘管理找不到虚拟硬盘
java连接数据库跳转
异地怎么连接数据库
toptop原神是什么服务器
虹口区综合软件开发服务电话
贱圣玩的龙珠服务器IP
阿拉德之怒江苏服务器
服务器异常请稍后再试看购
网络安全集成龙头股
广州凡科网互联网科技有限公司
软件开发使用工控机
网络技术包括哪几种
前端接收数据库数据库
网络技术专升本对口学校
企业管理器连接不到服务器
网络安全共建协议
深圳微互联网科技
衢州软件开发与定制
换苹果id服务器连接失败
服务器获取不到ip
餐饮软件开发机构
账无忧怎么登录数据库
查数据库最后一条数据
海康威视服务器无法识别
最近的网络安全事故
前端接收数据库数据库
搭建 代理服务器
浪潮服务器安装无线网卡