当前位置:首页 > CMS教程 > 其它CMS > 列表

yii2.0框架场景的简单使用示例

发布:smiling 来源: PHP粉丝网  添加日期:2022-02-08 08:57:04 浏览: 评论:0 

本文实例讲述了yii2.0框架场景的简单使用,分享给大家供大家参考,具体如下:

一、规则中使用场景

规则场景的使用

模型层

  1. public function rules() 
  2.   return [ 
  3.     [['name','product_id'],'required','on'=>'add], 
  4.   ]; 

表示只在add场景下改规则才生效。

在控制器中指定场景:

$model->scenario = "add";

或者

$model = new User(['scenario' => 'add']);

最后使用函数触发验证:

$model->load(Yii::$app->request->post()) //加载值

$model->validate() //证规则

当验证不通过时可以直接刷新页面

return $this->refresh();

二、场景方法定义字段在固定场景下才能被修改

模型层

  1. public function scenarios() 
  2.   return [ 
  3.     'default' => ['table_name''field_name'],//默认所有场景都可以操作 
  4.  'add' => ['age''name'], 
  5.  'update' => ['age'], 
  6.   ]; 

表示:

添加场景(add) 只会添加 age和name两个字段的值到数据库

修改场景(uodate)只会把age的值修改

所以一般情况下是不会重写scenarios方法,当动态增加字段时还得手动修改方法里的字段。

Tags: yii2.0框架场景

分享到: