2016-05-20 3 views
2

私はbookDatasourceを持っています。 1つの本には多くの著者がいます。コレクションは、ブック編集ビューのグリッドに表示されます。今私は著者名でソートしたいと思います。 collectionDatasourceプロパティでは、sortableをtrueに設定しました。 どうすればいいですか?キューブフレームワークで入れ子になったコレクションのデータソースをソートする

+1

これまでのコード、特にデータバインディングとコンテナのグリッド接続を表示してください –

答えて

7

私が正しく理解していれば、あなたは表とブックの著者そのように、ネストされたデータソースを使用して結合している:もしそうなら

<datasource id="bookDs" 
       class="com.company.test.entity.Book" 
       view="book-edit-view"> 
     <collectionDatasource id="authorsDs" property="authors"/> 
    </datasource> 

を、最初に、確実にその本エンティティが注文したタイプの著者属性のコレクションを持っています(リストまたはリンクハッシュセット)。そうでない場合は、スタジオでコレクションタイプを変更するか、ブックエンティティで手動で変更できます。

テーブルの列がソート可能になります。ユーザーが列ヘッダーの表をクリックすると、それに応じて行がソートされます。また、CUBA Platformはユーザー設定として保存ソート設定を処理します - 次回ユーザーがスクリーンテーブルを開くときにソートされます。

デフォルトでブック著者のソートを有効にするには、ORMレベルで行うことができます。スタジオの公開エンティティブックで、authors属性をクリックし、値の名前に設定してください。属性プロパティパネルのフィールド。これにより、Bookエンティティのインスタンスに名前でソートされた作者が確実に存在します。

関連する問題