[英]Yii2 $model->load(Yii::$app->request->post()) does not load data from form
[英]Yii2 Getting a Syntax error on ` $this->modelClass::find()->andWhere(['post_id' => \Yii::$app->request->get('postId')])` which is a valid clause
我收到此錯誤:“語法錯誤,意外的'::'(T_PAAMAYIM_NEKUDOTAYIM),期望']'”在一個有效的子句上。
<?php namespace app\controllers;
use app\models\Comment;
use yii\data\ActiveDataProvider;
use yii\rest\ActiveController;
class CommentController extends ActiveController{
public $modelClass = Comment::class;
public function actions()
{
$actions = parent::actions(); //Auto generated STUD
$actions['index']['prepareDataProvider'] = [$this,'prepareDataProvider']; // Replace for custom
return $actions;
}
public function prepareDataProvider()
{
return new ActiveDataProvider([
"query" => $this->modelClass::find()->andWhere(['post_id' => \Yii::$app->request->get('postId')])
]);
}
}
如果我將“$this->modelClass”替換為“Comment”或任何模型名稱,它就可以正常工作。 知道為什么會發生這種情況嗎?
為此,我們使用 PHP 5.6.36 只是因為主應用程序是用它實現的。
設置一個變量並使用它。
public function prepareDataProvider()
{
$class = $this->modelClass;
return new ActiveDataProvider([
"query" => $class::find()->andWhere(['post_id' => \Yii::$app->request->get('postId')])
]);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.