はどのようにあなたのtemplate/
ディレクトリ構造が設定されていますか? index.html
テンプレートがbase.html
から拡張されている場合、Djangoはルートテンプレートディレクトリにあるbase.html
を選択します。
ソリューション: どちらかbase2.html
ような何かにあなたのbase.html
のいずれかのテンプレートの名前を変更し、base1.html
と一緒templates/
に入れて、またはにbase.html
ファイルを置くためにtemplates/
に新しいディレクトリを作成します。
ソリューションAの場合、適切なindex.html
テンプレートで{% extends base.html %}
を{% extends base2.html %}
に変更してください。
解決策Bの場合、base.html
ファイルは同じ名前を保持しますが、異なるディレクトリに存在します。つまり、1つはtemplates/base1/base.html
、もう1つはtemplates/base2/base.html
です。ファイルindex.html
は、{% extends base1/base.html %}
と{% extends base2/base.html %}
のように拡張されます。すべての拡張パスは、選択したテンプレートディレクトリのルートからの相対パスであることに注意してください。
IMOソリューションBは、テンプレートベースのコードを明示的に名前の異なる別のフォルダに分けるため、より優れています。将来的に組織/柔軟性が向上し、混乱が少なくなります。