SilverStripe 3.1 remove SortableGridField pagnation and show all DataObejcts
我一直在尝试查找有关如何在SS3中删除GridField上的分页并在CMS GridField视图中显示所有(或至少更多)DataObject的信息。
我专门使用SortableGridFields进行排序。
该接口默认一次加载15个数据对象。
这是特定GridField的当前代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | class ProjectPage extends Page { // ORM public static $has_many = array( "Media" =>"ProjectMediaObject" ); // Page fields in CMS public function getCMSFields() { // add media GridField // config $config = GridFieldConfig_RecordEditor::create(); $config->getComponentByType('GridFieldDataColumns')->setDisplayFields(array( "Thumbnail" =>"Thumbnail", "hasVideo" =>"Video" )); $config->addComponent(new GridFieldBulkEditingTools()); $config->addComponent(new GridFieldBulkImageUpload()); $config->addComponent(new GridFieldSortableRows("SortOrder")); // grid $media = new GridField("Media","ProjectMediaObject", $this->Media(), $config); $fields->addFieldToTab("Root.Media", $media); } |
} ??
代码运行完美,我正在寻找的是一些我似乎缺少的配置变量。否则,可能由于某种原因而无法实现...
有以下几种选择:
1 | $config = GridFieldConfig_RecordEditor::create(50); |
或在组件上每页设置项目:
1 | $config->getComponentByType('GridFieldPaginator')->setItemsPerPage(50); |
或删除分页(和相关组件):
1 2 | $config->removeComponentsByType('GridFieldPaginator'); $config->removeComponentsByType('GridFieldPageCount'); |