... このタグは特にループの中で役立ちます: {% for o in some_list %} < tr class = " {% cycle 'row1' 'row2' %} " > ... </ tr > {% endfor %} この例では、繰り返しの最初の実行では row1 クラスを参照する HTML が生成されます。 2 回目には row2 、 3 回目は再び row1 と ... 下のように交互に値を変更できます: {% for o in some_list %} < tr class = " {% cycle rowvalue1 rowvalue2 %} " > ... </ tr > {% endfor %} Variables included in the cycle will be escaped. You can disable auto-escaping with: {% for o in some_list %} < tr clas ... s = " {% autoescape off %}{% cycle rowvalue1 rowvalue2 %}{% endautoescape %} " > ... </ tr > {% endfor %} 下記のように、変数と文字列を混在させることもできます: {% for o in some_list %} < tr class = " {% cycle 'row1' rowvalue2 ... ... このタグは特にループの中で役立ちます: {% for o in some_list %} < tr class = " {% cycle 'row1' 'row2' %} " > ... </ tr > {% endfor %} この例では、繰り返しの最初の実行では row1 クラスを参照する HTML が生成されます。 2 回目には row2 、 3 回目は再び row1 と ... 下のように交互に値を変更できます: {% for o in some_list %} < tr class = " {% cycle rowvalue1 rowvalue2 %} " > ... </ tr > {% endfor %} Variables included in the cycle will be escaped. You can disable auto-escaping with: {% for o in some_list %} < tr clas ... s = " {% autoescape off %}{% cycle rowvalue1 rowvalue2 %}{% endautoescape %} " > ... </ tr > {% endfor %} 下記のように、変数と文字列を混在させることもできます: {% for o in some_list %} < tr class = " {% cycle 'row1' rowvalue2 ... ... t_absolute_url }} " > {{ story.headline | upper }} </ a > </ h2 > < p > {{ story.tease | truncatewords :"100" }} </ p > {% endfor %} {% endblock %} 設計思想 なぜ、(ZopeのTALのような) XMLベースのテンプレートではなく、テキストベースのテンプレートを使うの ... 理するための、次のようなコードを考えてみましょう。 {% for k , v in defaultdict.items %} Do something with k and v here... {% endfor %} 辞書のルックアップが最初に行われるため、その動作が優先され、意図していた .items() メソッドの代わりにデフォルト値が返され ... list of athletes provided in athlete_list : < ul > {% for athlete in athlete_list %} < li > {{ athlete.name }} </ li > {% endfor %} </ ul > if , elif , else 変数を評価し、その変数が "true "の場合、ブロックの内容が表示されます: {% if athlete_list %} Nu ... ... t_absolute_url }} " > {{ story.headline | upper }} </ a > </ h2 > < p > {{ story.tease | truncatewords :"100" }} </ p > {% endfor %} {% endblock %} 設計思想 なぜ、(ZopeのTALのような) XMLベースのテンプレートではなく、テキストベースのテンプレートを使うの ... 理するための、次のようなコードを考えてみましょう。 {% for k , v in defaultdict.items %} Do something with k and v here... {% endfor %} 辞書のルックアップが最初に行われるため、その動作が優先され、意図していた .items() メソッドの代わりにデフォルト値が返され ... list of athletes provided in athlete_list : < ul > {% for athlete in athlete_list %} < li > {{ athlete.name }} </ li > {% endfor %} </ ul > if , elif , else 変数を評価し、その変数が "true "の場合、ブロックの内容が表示されます: {% if athlete_list %} Nu ... ... p/article_archive.html : < ul > {% for article in latest %} < li > {{ article.pub_date }} : {{ article.title }} </ li > {% endfor %} </ ul > これは、すべての記事 (article) を出力します。 YearArchiveView ¶ class YearArchiveView [ソース] ¶ 与えられた年の ... _archive" ), ] 例 myapp/article_archive_year.html : < ul > {% for date in date_list %} < li > {{ date | date }} </ li > {% endfor %} </ ul > < div > < h1 > All Articles for {{ year | date :"Y" }} </ h1 > {% for obj in object_list %} < p > {{ obj.title ... }} - {{ obj.pub_date | date :"F j, Y" }} </ p > {% endfor %} </ div > MonthArchiveView ¶ class MonthArchiveView [ソース] ¶ 与えられた月の中で有効な全オブジェクトを表示する、月次のア ... ... p/article_archive.html : < ul > {% for article in latest %} < li > {{ article.pub_date }} : {{ article.title }} </ li > {% endfor %} </ ul > これは、すべての記事 (article) を出力します。 YearArchiveView ¶ class YearArchiveView [ソース] ¶ 与えられた年の ... _archive" ), ] 例 myapp/article_archive_year.html : < ul > {% for date in date_list %} < li > {{ date | date }} </ li > {% endfor %} </ ul > < div > < h1 > All Articles for {{ year | date :"Y" }} </ h1 > {% for obj in object_list %} < p > {{ obj.title ... }} - {{ obj.pub_date | date :"F j, Y" }} </ p > {% endfor %} </ div > MonthArchiveView ¶ class MonthArchiveView [ソース] ¶ 与えられた月の中で有効な全オブジェクトを表示する、月次のア ... ... l: {% for field in form %} < div class = "fieldWrapper" > {{ field.errors }} {{ field.label_tag }} {{ field }} </ div > {% endfor %} それから FORM_RENDERER の設定を行います: settings.py ¶ from django.forms.renderers import TemplatesSetting class Custom ... ubject.errors %} < ol > {% for error in form.subject.errors %} < li >< strong > {{ error | escape }} </ strong ></ li > {% endfor %} </ ol > {% endif %} 非フィールドエラー(および/または form.as_p() のようなヘルパーを使用したときにフォームの先頭にレンダ ... %} < p class = "help" id = " {{ field.auto_id }} _helptext" > {{ field.help_text | safe }} </ p > {% endif %} </ div > {% endfor %} {{ field }} の有用な属性は次のとおりです: {{ field.errors }} このフィールドに対応するバリデーションエラーを含む <ul cla ... ... l: {% for field in form %} < div class = "fieldWrapper" > {{ field.errors }} {{ field.label_tag }} {{ field }} </ div > {% endfor %} それから FORM_RENDERER の設定を行います: settings.py ¶ from django.forms.renderers import TemplatesSetting class Custom ... ubject.errors %} < ol > {% for error in form.subject.errors %} < li >< strong > {{ error | escape }} </ strong ></ li > {% endfor %} </ ol > {% endif %} 非フィールドエラー(および/または form.as_p() のようなヘルパーを使用したときにフォームの先頭にレンダ ... %} < p class = "help" id = " {{ field.auto_id }} _helptext" > {{ field.help_text | safe }} </ p > {% endif %} </ div > {% endfor %} {{ field }} の有用な属性は次のとおりです: {{ field.errors }} このフィールドに対応するバリデーションエラーを含む <ul cla ... ... ーム自身に処理させる方法です: < form method = "post" > {{ formset.management_form }} {% for form in formset %} {{ form }} {% endfor %} </ form > 手動でフォームをレンダリングする場合は、必ず上記のように管理フォームをレンダリングしてください。 管理フォーム ... st" > {{ formset.management_form }} {% for form in formset %} {% for field in form %} {{ field.label_tag }} {{ field }} {% endfor %} {% endfor %} </ form > この3つめのメソッドを使用し、 {% for %} ループでフィールドをイテレートしない場合、主キーフィール ... }} {% for form in formset %} {{ form.id }} < ul > < li > {{ form.name }} </ li > < li > {{ form.age }} </ li > </ ul > {% endfor %} </ form > 明示的に {{ form.id }} をレンダリングする必要があることに注意してください。これにより、 POST の場合のモデルの ... ... ーム自身に処理させる方法です: < form method = "post" > {{ formset.management_form }} {% for form in formset %} {{ form }} {% endfor %} </ form > 手動でフォームをレンダリングする場合は、必ず上記のように管理フォームをレンダリングしてください。 管理フォーム ... st" > {{ formset.management_form }} {% for form in formset %} {% for field in form %} {{ field.label_tag }} {{ field }} {% endfor %} {% endfor %} </ form > この3つめのメソッドを使用し、 {% for %} ループでフィールドをイテレートしない場合、主キーフィール ... }} {% for form in formset %} {{ form.id }} < ul > < li > {{ form.name }} </ li > < li > {{ form.age }} </ li > </ ul > {% endfor %} </ form > 明示的に {{ form.id }} をレンダリングする必要があることに注意してください。これにより、 POST の場合のモデルの ... 2026年10月08日