2017-10-06 4 views
0

私はSilverstripeをはじめて使用しており、多くの研究を行っています。私はそれについていくつかの情報を見つけましたが、できないことが1つあります。私は3つのデータオブジェクトを持つModeladminを使用しています。顧客、契約、契約タイプ。今のところ、ページ数はページあたり15個のアイテムに設定されています。しかし、私はすべての私のデータオブジェクトの1ページあたり8項目だけを見たいと思います。すべてのデータオブジェクトのPageクラスを拡張することなく、これを行う方法はありますか?Silverstripe Modeladmin:Gridviewページング - ページごとの項目を変更

多くのありがとうございます。

+0

あなたは関連のDataObjectの8つの項目各タブのショーをしたい、またはあなたが3つのDataObjectの混合8つの項目とONEリストをしたいですか? – wmk

答えて

2

あなたModelAdminのクラスでは、あなたが例えば、ページ長を設定することができます。 private static $page_length = 5

2

あなたは、構成APIやYAML構文を使用して8にdefault_items_per_pageを設定することができ、GridFieldがあるすべてのケースで表彰されます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); 
関連する問題