阅读 150

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

这篇文章主要介绍了yii2.0框架场景的简单使用,结合实例形式分析了yii2.0框架场景的使用方法及相关操作注意事项,需要的朋友可以参考下

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

一、规则中使用场景

规则场景的使用

模型层

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

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

在控制器中指定场景:

1
$model->scenario = "add";

或者

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

最后使用函数触发验证:

1
2
$model->load(Yii::$app->request->post()) //加载值
$model->validate() //证规则

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

1
return $this->refresh();

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

模型层

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

表示:

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

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

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



文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐