2012-01-29 5 views
0

親/子のような方法でクエリの結果を並べ替えようとしています。私はこれを達成する簡単な方法があるのだろうかと思っています。djangoでのクエリオブジェクトの順序

オブジェクト:

Video 1: [123, null, 01/11] 
    Video 2: [111, 123, 02/11] 
    Video 3: [144, 123, 04/11] 

Video 4: [191, null, 03/11] 
    Video 5: [118, 191, 03/11] 
    Video 6: [121, 191, 05/11] 

Video 7: [411, null, 04/11] 

... 

クエリセット内の親/子グループの順序付けのこの種を達成するための方法はあります:私はしたい

Video : [id, parent_id, date] // where parent_id can be null - meaning it is a 'root' node. 

クエリセットの順序?

+1

からMPTT上

詳しい情報あなたは、ドット表記法によるルートノードと子へのアクセスを取得することができます: 'video.video_set.all()'。十分ではありません? – danihp

答えて

0

テンプレートレベルでこれを使用する必要がある場合は、クエリセットの順序を変更するregroupテンプレートタグを使用することができます。この問題を解決するあなたはdjango-mpttを使用する必要が

https://docs.djangoproject.com/en/dev/ref/templates/builtins/?from=olddocs#regroup

{% regroup videos by parent_id as group %} 
{% for video in group %} 
    {{ video.grouper }} 
    {% for child in group.list %}{{ child }}{% endfor %} 
{% endfor %} 
関連する問題