2017-01-11 12 views
0

ブック、章、ページ、段落、行の5つの「接続」モデルがあります。これらはすべてDjango複数の "デイジーチェーン"モデル

  • ラインは、段落のページへ
  • ページをリンクする外部キーがリンクする外部キーを持っている段落
  • にリンクする外部キーを持っているという意味で、外部キーのチェーンで接続されていますそれは章
  • に章は、それが

基本的には、5つのテーブル、4 1対多の関係を予約するためにリンクする外部キーを持っています。

ネストされたリストのツリーを表示したいと思います。私はちょうど本と章(再グループを使用して)のためにそれを行う方法を知っていますが、私が "深く掘り起こす"必要があるとき、私は立ち往生しています。

答えて

0

これは、regroupとは関係がありません。逆の関係を使用するだけです。私はこれがテンプレートレンダラーに非常に重い負荷であるかもしれないと思いますが、おそらくこれをより良く実行する方法を検討する必要があります。

{% for chapter in book.chapter_set.all %} 
    {% for page in chapter.page_set.all %}  
     {% for paragraph in page.paragraph_set.all %}   
      {% for line in paragraph.line_set.all %} 
      {% endfor %}   
     {% endfor %}  
    {% endfor %} 
{% endfor %}