public function down()
 {
     if ($user = User::find()->where(['username' => 'admin'])->one()) {
         /** @var $user User */
         $user->delete();
         echo 'User "' . $user->username . '" deleted.';
     }
 }
Esempio n. 2
0
 /**
  * Creates data provider instance with search query applied
  *
  * @param array $params
  *
  * @return ActiveDataProvider
  */
 public function search($params)
 {
     $query = User::find();
     $dataProvider = new ActiveDataProvider(['query' => $query, 'sort' => ['defaultOrder' => ['updated_at' => SORT_DESC]]]);
     if (!($this->load($params) && $this->validate())) {
         $query->andWhere('status!=:status', [':status' => User::STATUS_DELETED]);
         return $dataProvider;
     }
     $query->andFilterWhere(['id' => $this->id, 'status' => $this->status, 'created_at' => $this->created_at, 'updated_at' => $this->updated_at, 'deleted_at' => $this->deleted_at, 'last_visit_at' => $this->last_visit_at]);
     $query->andFilterWhere(['like', 'username', $this->username])->andFilterWhere(['like', 'email', $this->email])->andFilterWhere(['like', 'password_hash', $this->password_hash])->andFilterWhere(['like', 'password_reset_token', $this->password_reset_token])->andFilterWhere(['like', 'auth_key', $this->auth_key]);
     //по умолчанию скрываем удаленыых пользователей
     if (strlen($this->status) === 0) {
         $query->andWhere('status!=:status', [':status' => User::STATUS_DELETED]);
     }
     if (count($this->getRoles())) {
         $auth = Yii::$app->authManager;
         $query->leftJoin($auth->assignmentTable . ' roles', 'roles.user_id=id');
         $query->andWhere(['roles.item_name' => $this->getRoles()]);
     }
     return $dataProvider;
 }