1

サイトの基本テンプレート用の mytemplates というフォルダーがあります

Project ----App1,App2,App3,static

今、私の静的フォルダーには、というフォルダーがありますmytemplates/temp1/index.html

今私のapp1で

app1/templates/app1/index.html

やりたい

{% extends "/static/mytemplates/temp1/index.html" %}

しかし、そのテンプレートが見つからないと言っています

4

2 に答える 2

3

書く必要はありません/static

/staticそうしないとsettings.TEMPLATE_DIRS、djangoのテンプレートローダーはそこを検索しません。相対パスではなく、絶対パスを書き出す必要があります。

デフォルトでは、テンプレートローダーはテンプレートフォルダー内を検索するため、テンプレートフォルダーに依存しません。つまり、書き込み{% extends "mytemplates/temp1/index.html" %}により、django はすべてのテンプレートディレクトリのリストを作成mytemplates/temp1/index.htmlし、それぞれの絶対パスに追加します。連結パスが存在するかどうかを判断する。そうでない場合は、他のテンプレート ディレクトリを試行し続けます。すべてのディレクトリを試しても一致するものが見つからない場合、django は例外を発生させます。

{% extends "mytemplates/temp1/index.html" %}あなたのstaticフォルダがあなたのタプルsettings.TEMPLATES_DIRにあり、それ"mytemplates/temp1/index.html"static.

于 2012-12-09T10:03:28.053 に答える
0

ファイルへのフル パス名を入力しないでください。正確な構文については、こちらを参照してください。ビューからテンプレートを呼び出すのと同じ名前の場合。

于 2012-12-09T10:01:23.980 に答える