YII2场景值的使用

访客5年前PHP1089

开发的时候添加和编辑写在了一个方法里面,上传图片添加的时候需要验证为空,编辑的时候不需要,这时候yii的场景值能够解决这个问题:

控制器中

$model = new NewsForm();
$model->scenario = 'add';//指定场景值

模型中

//接下来是model的写法
public function rules()
{
  return [
    [['img'], 'file'],
    [['img'],'required','message'=>'{attribute}不能为空','on' => ['add']],//此处指定只有场景为add时才验证
    [['title','content','source','abstract'],'required','message'=>'{attribute}不能为空'],
    ['abstract','string','max'=>5,'min'=>20, 'tooShort'=>'长度需大于5个字','tooLong'=>'长度不能大于20个字'],
  ];
}


相关文章

七牛上传报文件已存在

之前做了一个大文件的分片上传,做好之后就没管了,让客户端一直自己用着,然后期间偶尔会有浏览器不兼容的现象我也懒得改,然后十一回来,客户端就给我说,有文件上传不上去,然后正好手头没活,就用改了下先看下思...

跨域的其他方式

上次向大家介绍了跨域的解决方式jsonp,总感觉差点什么,所以,补充一下,介绍另外一种跨域方式:比如说,公司内部系统之间,比如ERP和OA之间想要进行数据交互,但是每个系统都有自己的域名,如果想实现数...

Laravel中灵活使用Trait

这次我们来学的是Trait,说到Trait ,大家的印象可能就是复用一直以来,我对复用的理解就是写一个公共类/文件,通过继承/require 来实现复用,那里需要就哪里继承/ 引用,目的就是少写代码我...

workerMan之心跳检测

workerMan之心跳检测

上次咱们说到,长连接应用必须加心跳检测,避免连接由于上时间没有通讯被断开其实心跳的作用有2个:1、客户端定时给服务器发送数据,防止连接由于长时间没有通讯被断开2、服务端可以通过心跳来判断客户端是否在线...

workerman实现聊天室

workerman实现聊天室

Workerman的一些应用方向如下1、即时通讯类 例如网页即时聊天、即时消息推送、微信小程序、手机app消息推送、PC软件消息推送等等 [示例 workerman-chat聊天室 、&nb...

Yii2.0框架ActiveForm总结

首先引入ActiveForm和Html这里两个是很重要的<?php     use yii\bootstrap\ActiveForm; &nbs...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。