...いくつかのアプリが、適切な階層の外で同様の名前のテンプレートを定義するとき。ありがとうございました。Djangoはどのようにテンプレート名の衝突を処理しますか?
0
A
答えて
1
テンプレートローダーは、settings.TEMPLATE_LOADERS
で定義した順序で適用されます。あなたはfilesystem
ローダーAFTER app_directories
ローダーを実行しているし、あなたのテンプレートがfilesystem
ローダーに配置されている場合
は、例えば、app_directories
ローダが使用されることはありません。
app_directories
ローダーについて具体的に言えば、INSTALLED_APPS
で定義されている順番でアプリテンプレートフォルダを検索します。
テンプレートの名前が重複していて、意図しない(上書きの階層ではない)場合は、各テンプレートフォルダの先頭にアプリ名を付ける方がよい場合があります。
# this is standard
myapp/templates/myapp/index.html
myapp2/templates/myapp2/index.html
1
意味が明確ではありません。テンプレートを指定するときは、適切に名前を付けて正確に指定する必要があります。あなたがテンプレートのリストから「ベスト」テンプレートを選ぶ管理者のようなものを意味するならば、それは単純なアルゴリズムを使って最もマッチしたものを見つけます。 loader.select_templateにテンプレートのリストを渡すだけで、これが実行され、有効な最初のテンプレートが使用されます。
関連する問題
- 1. Django slugified urls - どのように衝突を処理するのですか?
- 2. モジュール名の衝突の処理
- 3. 処理:トレールとの衝突
- 4. Django:モデル名の衝突
- 5. Djangoモデル:フィールド名の衝突
- 6. 多くの衝突を処理する
- 7. 衝突検出をセットアップしてから2Dゲームで衝突を処理する
- 8. jquery名前空間の衝突を処理するにはどうすればいいですか?
- 9. コリソンチェーンでのハッシュコードの衝突処理
- 10. どのように衝突を検出するが、box2dで衝突しない?
- 11. 処理上の衝突検出
- 12. 移動スプライトによる2dスプライトの衝突処理のトップダウン?
- 13. SwiftでScenekitの衝突検出を処理するにはどうすればよいですか?
- 14. 処理 - 2つの動画をどのように衝突させるのですか?
- 15. 名前の衝突
- 16. 同じタイプの複数のスプライトの衝突検出のチェックはどうすれば処理できますか?
- 17. スネークの衝突が働いていません - Javaの処理
- 18. XNAどのように良い衝突アルゴリズムを書くには?
- 19. rails3のモジュール名の衝突
- 20. Genericの名前の衝突
- 21. 処理中に矩形との衝突で画像が消えるのはどうですか?
- 22. どのようにして衝突を修正できますか?
- 23. どのようにしてルート衝突を回避できますか?
- 24. どのようにして衝突チェックを実行できますか?
- 25. LibGDXでShapeRendererとの衝突を処理する方法
- 26. ノッチはミニクラフトでどのように衝突検出を行いますか?
- 27. Djangoカスタムユーザモデル投げSystemCheckError - 'username'フィールドが 'username'という名前と衝突します
- 28. 名前空間とクラス名の衝突をどう扱うべきか
- 29. RESTはこの処理をどのように処理しますか?
- 30. 支店名の衝突
テンプレートが一度読み込まれ、起動時にキャッシュされていれば不思議で、Djangoが名前を共有する複数のテンプレートを見つけた場合のDjangoの動作に影響します。 –