「後方」関係を持ついくつかのモデルで作業しています。私は不思議に思っていました...いくつかの結果をフィルタリングしたいのですが?Django - 関連するオブジェクトを「後方」関係でフィルタリングする
私が持っている二つのモデル: P = A.objects.all()ORDER_BY( ' - 日')
をし、私はことを渡す:
Model A:
name
image
date
Model B:
ForeignKey to Model A
name
date
がモデルAIの使用にアクセスします。テンプレートに。テンプレートで
:
{% for n in model_a.all %}
{% for item in n.modelb_set.all %}
<li>{{item.name}}</li>
{% endfor %}
{% endfor %}
私はモデルAのためのすべての後方関連オブジェクトを取得し、罰金のthats。
ここで、そのクエリからいくつかの結果をフィルタリングしたいのですが?私はビューで反復を考えていた
:
p = A.objects.all().order_by('-date')
for n in p:
for x in n.modelb_set.filter(date_lte=""):
ls = []
ls.append[x]
どのようにしてフィルタリングされた結果となりましたテンプレートにあることを渡し、私が以前に得たもの(フィルタリングされていないビュー)を取得するが、できますか?
:
次に、あなたのテンプレートで、あなただけではなく、そのメソッドを呼び出します表現とビジネスロジックを混在させます。おそらく、それをカプセル化するマネージャを実装するのが最善でしょう。また、Bのクエリーセットを反復し、Aの一部の基準でフィルタリングすることもできます。 – tback
応答ありがとうございます。私は覚えています:) – Efrin