有没有办法完全禁用pageSizeLimit [yii2]

时间:2015-08-10 23:59:37

标签: php api rest yii2

yii2 REST API使用ActiveDataProvider来获取和显示数据。此类具有pageSizeLimitdocs)参数,默认情况下我们将pageSize限制为50,因此无论per-pagepageSizeParam)查询参数有多高,最多返回50行。

有没有办法完全禁用pageSizeLimit,以便提供程序通过指定per-page查询参数显示尽可能多的行,如果未指定,则显示defaultPageSize?将pageSizeLimit设置为false会强制始终返回defaultPageSize行,无论我们每页传递的是什么。

1 个答案:

答案 0 :(得分:3)

尝试将pageSizeLimit设置为 dataProvider 配置中的空数组。

'pagination' => [
    'pageSizeLimit' => [1]
]

source code可以看到,如果pageSizeLimit参数为空,则yii2使用 defaultPageSize 参数,否则尝试从 $ _ GET 参数。因此,如果您将pageSizeLimit设置为包含一个元素的数组(或其他任何内容但不包含 false [x,y] 数组),setPageSize()将不检查限制并将pageSize设置为 $ _ GET

中的值