【问题标题】:SilverStripe ModelAdmin number of records per page for pagination is not workingSilverStripe ModelAdmin 每页的分页记录数不起作用
【发布时间】:2020-03-05 00:44:15
【问题描述】:

我正在从事 SilverStripe 项目。在我的项目中,我正在构建一个模型管理类来显示 CMS 中的记录列表。我试图限制每页呈现的记录数。所以我把 $page_length 字段像这样放在我的模型管理类中。

class OrderAdmin extends ModelAdmin
{
    private static $managed_models = [
        Order::class
    ];

    private static $url_segment = 'orders';

    private static $menu_title = 'Orders';

    private static $menu_icon_class = 'font-icon-checklist';

    private static $page_length = 25;

    //other code goes here
}

如您所见,在上面的代码中,我将每页的记录数设置为 25。即使我将其设置为 25,它仍然在 CMS 中每页显示 15 条记录。我也重建并刷新了项目。我的代码中缺少什么以及如何修复它?

【问题讨论】:

  • 对于 SS4,默认 ModelAdmin page_length = 30。我怀疑您的代码中某处指定了 15 个。我已经测试了使用最新版本的 S 更改 page_length 并按预期工作。
  • 您使用的是自定义分页器还是可能会忽略之前分页器的“每页项目数”设置的东西?

标签: silverstripe silverstripe-4


【解决方案1】:

这是大约 4.3 版 Silverstripe 管理模块中的一个错误。此后此问题已得到修复:
https://github.com/silverstripe/silverstripe-admin/issues/971

您的代码private static $page_length = 25; 是设置页面长度的正确方法。这现在可以在 Silverstripe 4.5 中正常工作

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-23
    • 2012-08-22
    • 2021-07-10
    • 2021-08-07
    • 2018-03-18
    • 2017-02-11
    • 1970-01-01
    相关资源
    最近更新 更多