with
タグの最大の目的の1つは、テンプレートに「複雑な変数名をキャッシュする」ことです。Djangoのテンプレートタグ "with"を使うのは良い考えですか?
しかし、いつ使用するのがよいでしょうか?
私は私が今までと同じテンプレート変数を使用してcount()
、all()
、filter()
、またはget()
でデータベースをヒットした場合、その後、私はwith
を使用する必要がありますと仮定しています。
しかし、user.username
のような簡単なフィールド検索はどうですか?特定のテンプレートでは、私はuser.username
を何度も呼び出しています。
with
をuser.username
に使用する必要がありますか、または辞書を介してビューから単純な文字列を渡す必要がありますか?
本当に外部キーを転送しますか?だから '{%blog.comments.all%}'のようなことはキャッシュされますか?ドキュメント例が '{%business.employees.count%} 'をキャッシュすると言っているのはなぜですか?それは前方の外部キーでもないのでしょうか? – hobbes3
いいえ、それらは逆の外部キーまたは多対多の両方です。フォワードFKは、 'comment.blog.title'または' employee.business.name'です。 –
したがって、M2Mも決してキャッシュされませんか? – hobbes3