Activerecord Yii2活动记录:使用带有限制的关系不会返回任何内容

Activerecord Yii2活动记录:使用带有限制的关系不会返回任何内容,activerecord,yii2,Activerecord,Yii2,在我的项目中,我试图通过使用with()调用关系来返回相关数据,问题是当我在未返回数据的关系中设置limit()时 到目前为止,我的代码是: 关系 public function getRequestNoteLess(){ return $this->hasMany(RequestNote::className(), ['request_id'=>'id']) ->orderBy(['is_admin'=>SORT_DESC,'id

在我的项目中,我试图通过使用
with()
调用关系来返回相关数据,问题是当我在未返回数据的关系中设置
limit()

到目前为止,我的代码是: 关系

public function getRequestNoteLess(){
    return $this->hasMany(RequestNote::className(), ['request_id'=>'id'])
                ->orderBy(['is_admin'=>SORT_DESC,'id'=>SORT_DESC])
                ->limit(3);
}
质疑


当您使用复杂的sql并且最终需要一些框架函数未涵盖的功能时,您可以使用
findBySql

如果查询与模型不严格相关,则为queryal

 $model = $connection->createCommand('SELECT * FROM Your_table');
 $yourModel = $model->queryAll();

请看下面的一些建议

当您取消限制时,一切正常(只是没有限制)?是的,这就是发生的@robschAre您是否通过
ActiveDataProvider
加载数据并在
GridView
中使用它?如果您的答案是肯定的,您应该在class
ActiveDataProvider
no中配置
pageSize
,我将返回数据作为json encode@thanhpv请为
json\u encode()添加代码
 $sql = 'Select ........';
 $model = YourModel::findBySql($sql)->all();  
 $model = $connection->createCommand('SELECT * FROM Your_table');
 $yourModel = $model->queryAll();