千家信息网

yii2怎么根据条件设定指定值

发表于:2024-09-29 作者:千家信息网编辑
千家信息网最后更新 2024年09月29日,本篇内容主要讲解"yii2怎么根据条件设定指定值",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"yii2怎么根据条件设定指定值"吧!gii自动生成的_for
千家信息网最后更新 2024年09月29日yii2怎么根据条件设定指定值

本篇内容主要讲解"yii2怎么根据条件设定指定值",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"yii2怎么根据条件设定指定值"吧!

gii自动生成的_form.php文件中,我们可以根据代码$model->isNewRecord 返回的值,来判断当前是增加还是更新,在form.php文件中,还可以根据它的属性值给字段input框赋予默认值

connect字段为多选框字段,前台传到后台的数据默认是数组格式。该字段对应是让tostring方法处理,先把它的值赋给静态变量$connect,然后在beforeSave中把数组格式化成字符串,在返回,存入数据库。

namespace backend\models;

use Yii;

use \yii\db\ActiveRecord;

class Newdocument extends ActiveRecord
{

public function beforeSave($insert){
if(parent::beforeSave($insert)){
if($this->isNewRecord){//判断是更新还是插入
$this->connect = implode(',', $this->connect);
$this->create_time = time();

}else{
$this->update_time = time();
$this->connect = implode(',', $this->connect);
}
return true;
}else{

return false;
}
}
/**
* @inheritdoc
*/
public static function tableName()
{
return 'document';
}

/**
* @inheritdoc
*/
public function rules()
{
return [
[[ 'create_time','update_time'], 'integer'],

['connect','tostring'],
];
}

public function tostring(){//可通过方法单独控制某个字段,也可以直接通过beforesave方法控制
//if($this->isNewRecord){//判断是更新还是插入
//$this->connect = implode(',', $this->connect);
//}else{
// $this->connect = implode(',', $this->connect);
//}
}

到此,相信大家对"yii2怎么根据条件设定指定值"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0