我第一次使用Silverstripe並進行了大量的研究。有一件事我無法完成,儘管我找到了一些有關它的信息。我正在使用Modeladmin和3個數據對象,例如。客戶,合同,合同類型。目前,分頁設置爲每頁15個項目。不過,我希望每個數據對象只能看到每頁8個項目。有沒有辦法做到這一點,而不必擴展所有我的數據對象的Page類?Silverstripe Modeladmin:Gridview分頁 - 每頁更改項目
非常感謝。
我第一次使用Silverstripe並進行了大量的研究。有一件事我無法完成,儘管我找到了一些有關它的信息。我正在使用Modeladmin和3個數據對象,例如。客戶,合同,合同類型。目前,分頁設置爲每頁15個項目。不過,我希望每個數據對象只能看到每頁8個項目。有沒有辦法做到這一點,而不必擴展所有我的數據對象的Page類?Silverstripe Modeladmin:Gridview分頁 - 每頁更改項目
非常感謝。
在你的ModelAdmin類,你可以設置頁面長度,例如: private static $page_length = 5
您可以使用配置API或YAML語法,這將在所有的情況下兌現其中一個GridField是設置default_items_per_page
8使用GridFieldPaginator組件創建,並且不設置其自己的頁面大小。
請注意,ModelAdmin是一個例子,其中確實設置了自己的頁面長度(在Simon's answer中描述),因此您還需要設置該配置屬性。
您可能正在使用的其他代碼部分(其他SilverStripe模塊)正在設置頁面大小而不允許用戶配置它們,但這應該可以抓住您的大部分情況。
# File: mysite/_config/config.yml
ModelAdmin:
page_length: 8
GridFieldPaginator:
default_items_per_page: 8
或在_config.php文件:
Config::inst()->update('ModelAdmin', 'page_length', 8);
Config::inst()->update('GridFieldPaginator', 'default_items_per_page', 8);
希望每個標籤上顯示的8項相關的數據對象的,還是你想一個列表8個物品混裝你的三個數據對象的? – wmk