0

別のアプリケーションで別のテンプレートを使用するにはどうすればよいですか。プロジェクトには 1) サイト 2) 広告という 2 つのアプリがあります。または、テンプレートで 2 行だけを変更する必要があるため、「if 条件」を使用する方法があります。

4

3 に答える 3

2

まず、異なるアプリケーションで同じテンプレートを使用する必要はありません。最近の一般的な方法は、テンプレート ディレクトリをそれぞれのアプリ フォルダーに配置することであるため、アプリごとに異なるテンプレートを使用できます。

さらに、2行の変更には、いつでも`を使用できます

{% if condition %}
  something
{% else %}
  some other thing
{% endif %}

また

{% ifequal var 'var' %}
  something
{% else %}
  some other thing
{% endifequal %}

すべて同じテンプレートです。

編集

差分アプリケーションで同じテンプレートを使用する場合は、最初に django テンプレート ローダーが同じアプリ ディレクトリでテンプレートを検索し、次にプロジェクトのルート ディレクトリでテンプレートを検索し、見つからない場合はテンプレートのパスを適用できます。 django 独自のテンプレート ソースを探します。

したがって、どこでもテンプレートを使用したい場合は、apps ディレクトリと同じパスに配置された、templates というフォルダーにそれらを配置できます。(つまり、プロジェクトのルート)。

projectroot/app1/templates/app1.html
projectroot/app2/templates/app2.html
projectroot/app3/
projectroot/templates/common.html

同様に、common.html はすべてのアプリで使用できます。

于 2009-05-27T13:20:49.017 に答える
0

テンプレートの継承を使用http://www.djangobook.com/en/1.0/chapter04/ベース テンプレートを定義し、目的のブロックのみを変更します。

于 2009-05-27T23:19:44.937 に答える
0

Pl。私が提起した質問へのリンクを確認してください。回答はYuji Tによって提供されています

同じdjangoプロジェクトの2つのアプリケーションに2つの異なるchange_list.htmlを使用する方法

于 2012-01-13T07:31:36.970 に答える