15

リストアクションのSonataAdminBundleでデフォルトのエンティティの順序を変更するには?


答え:)これを管理者クラスに追加してください

protected $datagridValues = array(
    '_page' => 1,
    '_sort_order' => 'DESC', // sort direction 
    '_sort_by' => 'id' // field name 
);
4

2 に答える 2

9

コンストラクターをオーバーライドしない方がよいでしょう。ただし、メソッドをオーバーライドして、配列Admin::configure()の一部の要素を設定できます。datagridValues

例を参照してください:

public function configure()
{
    parent::configure();

    $this->datagridValues['_sort_by']    = 'name';
    $this->datagridValues['_sort_order'] = 'DESC';
}
于 2013-08-07T19:18:26.997 に答える
7

次のように、別の並べ替え順序を追加するか、コンストラクターを介してデフォルトの並べ替え順序を設定できます。

public function __construct($code, $class, $baseControllerName)
{
    parent::__construct($code, $class, $baseControllerName);

    if (!$this->hasRequest()) {
        $this->datagridValues = array(
            '_page'       => 1,
            '_sort_order' => 'ASC',      // sort direction
            '_sort_by'    => 'artist_id' // field name
        );
    }
}
于 2011-11-16T16:06:47.473 に答える