簡體   English   中英

Yii2:Yii :: $ app-> request-> queryParams為foreach()提供的參數無效

[英]Yii2: Yii::$app->request->queryParams Invalid argument supplied for foreach()

我正在嘗試使用Yii2 docs創建ActiveDataProvider ,但我一直在收到此錯誤:

Calling unknown method: app\models\UserKeysQuery::load() 

控制器:

 public function actionIndex()
    {
        $searchModel  = new UserKeys();
        $dataProvider = $searchModel::find()->search(Yii::$app->request->queryParams);

        return $this->render('index', [
            'searchModel'  => $searchModel,
            'dataProvider' => $dataProvider,
        ]);
    }

模型:

<?php

namespace app\models;

use Yii;
use yii\base\Model;
use app\models\UserKeys;
use yii\data\ActiveDataProvider;

/**
 * This is the ActiveQuery class for [[Keys]].
 *
 * @see Keys
 */
class UserKeysQuery extends UsersQuery
{

   public function search($params)
   {
        $query = UserKeys::find();

        $query->joinWith(['user', 'licence']);

        $dataProvider = new ActiveDataProvider([
            'query' => $query,
        ]);

        if (!($this->load($params) && $this->validate()))
            return $dataProvider;

        $query->andFilterWhere([
                'key' => Yii::$app->encrypter->encrypt($this->key)
            ]);

        return $dataProvider;
   }

}

我究竟做錯了什么?

你延伸

 class UserKeysQuery extends UsersQuery

但是你用

use app\models\UserKeys;

分配適當值的UserKeys或UsersKeys

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM