yii2框架场景怎么使用?
Admin 2021-05-11 群英技术资讯 686 次浏览
这篇文章给大家分享的是yii2框架场景的使用,主要介绍了规则场景的使用示例以及场景方法定义字段的在固定场景下才能被修改的的示例,具有一定的参考价值,感兴趣的朋友们可以看看。
规则场景的使用
模型层
public function rules() { return [ [['name','product_id'],'required','on'=>'add], ]; }
表示只在add场景下改规则才生效。
在控制器中指定场景:
$model->scenario = "add";
或者
$model = new User(['scenario' => 'add']);
最后使用函数触发验证:
$model->load(Yii::$app->request->post()) //加载值 $model->validate() //证规则
当验证不通过时可以直接刷新页面
return $this->refresh();
模型层
public function scenarios() { return [ 'default' => ['table_name', 'field_name'],//默认所有场景都可以操作 'add' => ['age', 'name'], 'update' => ['age'], ]; }
表示:
添加场景(add) 只会添加 age和name两个字段的值到数据库,修改场景(uodate)只会把age的值修改,所以一般情况下是不会重写scenarios方法,当动态增加字段时还得手动修改方法里的字段。
关于yii2框架场景的使用就介绍到这,希望对大家学习有一定的帮助,想要了解更多yii框架场景使用技巧,大家可以继续关注其他文章。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
在laravel中,get和all都可以获取到模型,区别是all可以直接获取所有模型,而get是在添加了许多约束条件之后获取模型,若get前面不添加约束条件的话,效果与all等同。
PHP高级过滤器,检测一个数字是否在一个范围内。下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
下面由phpstorm教程栏目给大家介绍phpstorm 突然打开不了的解决方法,希望对需要的朋友有所帮助!今天早上,phpstorm突然打开不了了,明明上周使用的挺好的!没办法,只能重新安装了!
今天小编就为大家分享一篇laravel 获取当前url的别名方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
本篇文章小编给大家分享一下Python中re.findall()用法代码解析,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008