TimestampBehavior::className(), // 'attributes' => [ // # 创建之前 // ActiveRecord::EVENT_BEFORE_INSERT => ['create_at', 'update_at'], // # 修改之前 // ActiveRecord::EVENT_BEFORE_UPDATE => ['update_at'] // ], // #设置默认值 // 'value' => $_SERVER['REQUEST_TIME'] // ] // ]; // } public function rules() { return [ [['name','experience'],'required','message'=>'不能为空'], ['name', 'unique', 'targetClass' => 'common\models\CategoryAdriser','on'=>['add'],'message'=>'该城市名称已经存在'], ['photo','string','max'=>50], ['del','default','value'=>1], ['del','in','range'=>[1,2]], ]; } /* * 调用里面的验证,错误返回数组,正确返回对象 * */ public function Authenticator($input) { $this->load($input,''); if(!$this->validate()) return $this->errors; return $this; } public function FindById($id) { return self::findOne($id); } public function getList($page,$arr = null) { $query = self::find(); $query->select($arr); $query = $this->WhereColumn($query); if(!empty($page['page'])) { $query->offset = ($page['page'] - 1) * $page['limit']; $query->limit = $page['limit']; } return $query->asArray()->all(); } private function WhereColumn($query) { $query->andFilterWhere(['name'=>$this->name]); $query->andWhere(['del'=>$this->setDel]); return $query; } public function Total() { $query = self::find(); $query = $this->WhereColumn($query); return $query->count(); } public function GetAdviser() { $query = self::find(); $query->select(['id', 'name', 'experience', 'photo']); $query->orderBy('RAND()'); return $query->asArray()->one(); } }