yii2框架场景怎么使用?

Admin 2021-05-11 群英技术资讯 533 次浏览

       这篇文章给大家分享的是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框架场景使用技巧,大家可以继续关注其他文章。

群英智防CDN,智能加速解决方案
标签: yii2 场景使用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服