gpt4 book ai didi

php - Yii 2 中的事件数据提供者标准

转载 作者:可可西里 更新时间:2023-10-31 22:44:56 27 4
gpt4 key购买 nike

我正在尝试使用数据提供程序按日期降序显示每个用户的数据库,这适用于 Controller 上的 Yii 1:

         $DataProvider = new CActiveDataProvider('ModelName', array(
'criteria' => array(
'condition' => 'user_id=' . Yii::app()->user->id,
'order' => 'submitted_dt DESC',
),
'pagination' => array(
'pageSize' => 20,
),
));

我在 Yii 2 中尝试这个:

     $DataProvider = new ActiveDataProvider([
'query' => ModelName::find(),
'criteria' => [
'condition' => 'user_id=' . Yii::$app->user->identity->id,
'order' => 'submitted_dt DESC',
],
'pagination' => [
'pageSize' => 20,
],
]);

// get posts in the current page
$Model= $DataProvider->getModels();

我得到的错误是未知属性:yii\data\ActiveDataProvider::criteria 。那么设置这个条件和顺序的方法是什么?欢迎所有建议

最佳答案

Yii2 的正确方法是:

$DataProvider = new ActiveDataProvider([
'query' => ModelName::find()->
where(['user_id'=>Yii::$app->user->identity->id])->
orderBy('submitted_dt DESC'),
'pagination' => [
'pageSize' => 20,
],
]);

// get posts in the current page
$Model= $DataProvider->getModels();

所以,你不需要 Yii2 中的 criteria 因为它已经不存在了。

关于php - Yii 2 中的事件数据提供者标准,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27746984/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com