Php Yii2:Yii::$app->;请求->;为foreach()提供的queryParams参数无效

Php Yii2:Yii::$app->;请求->;为foreach()提供的queryParams参数无效,php,yii,yii2,Php,Yii,Yii2,我正在尝试使用Yii2创建ActiveDataProvider,但不断出现以下错误: Calling unknown method: app\models\UserKeysQuery::load() 控制器: public function actionIndex() { $searchModel = new UserKeys(); $dataProvider = $searchModel::find()->search(Yii::$app-

我正在尝试使用Yii2创建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;

分配正确值的用户密钥或用户密钥

可能我不确定,但是
如果(!($this->load($params)和&$this->validate())
将是
如果(!(isset($params))| |!($this->validate())
这个类可以看到用户密钥吗?它没有它的用途list@Hiphop03199-我使用了错误的型号:/。我现在得到了不同的错误(我将更新问题)。您可以更新问题以指示新错误是什么吗?您的代码中没有任何foreach,因此这是一种猜测错误在哪里的方法