2
私のDjangoアプリをどのようにして表示するのに少し問題があります。私のモデルは次のようになります。私は私のテンプレートが各都市を表示したいDjangoのネストされたクエリーセット
class City (models.Model):
city_name = models.CharField(max_length=100, unique=True)
def __str__(self):
return self.city_name
class Portfolio(models.Model):
portfolio_name = models.CharField(max_length=20, unique=True)
city = models.ForeignKey(City, db_constraint=False, on_delete=models.CASCADE)
def __str__(self):
return self.portfolio_name
class Property (models.Model):
portfolio = models.ForeignKey(Portfolio, db_constraint=False, on_delete=models.CASCADE)
prop_name = models.CharField(max_length=250, unique=True)
def __str__(self):
return self.prop_name
、各都市の下にそのポートフォリオを持って、それぞれのポートフォリオの下でそのプロパティを持っています。
<ul>
{% for city in all_cities %}
<li>
{{ city.city_name }}
<ul>
{% for portfolio in all_portfolios| portfolio.city = city %}
<li>
{{ portfolio.portfolio_name }}
<ul>
{% for property in portfolio.all_properties| property.portfolio = portfolio%}
<li>
{{ property.prop_name }}
</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
:私は私のループでフィルタを投げるために、このようにそれを行うことができAngularJSから来るジャンゴに新しいビット、(明らかに私はそれをやっている、少なくともどのように、ジャンゴでは動作しません)よ
アイデア?おそらく私はまだ口頭で言えない簡単な解決策があります。このようなことがわかった唯一のことは、都市ごと、そして各ポートフォリオごとにカスタムクエリーセットを作成することですが、これを行うにはより良い方法が必要です。
を行ってもいいである必要があり、適切な[ '()' prefetch_related](https://docs.djangoproject.com/en/ 1.10/ref/models/querysets /#prefetch-related)を呼び出してファイナライズする前に、ネストされた繰り返しをネイティブに行うことができます。 –