for ループ内で name0、name1、... などの一連の変数を作成したいと考えています。ありがとう。
{% for i in '1234567890' %}
{% if name{{forloop.counter0}} %}
...
{% endif %}
...
{{name{{forloop.counter0}}}}
...
{% endfor %}
次のように簡単です
{{ name }}{{ forloop.counter0 }}
if には、「with」ステートメントを使用する必要があります。
{% with name|add:forloop.counter0 as if_test %}
{% if if_test %}
... <!-- do whatever you need to do here -->
これはすべてforループ内にある必要があります
ご覧のとおり、Django テンプレート言語は、ユーザーがやろうとしていることをやめさせようと懸命に努力し、テンプレートではなくビュー コードでデータ処理を行うように促します。あなたの例では、あなたのビューコードで、次のことを試してみてください:
context['names'] = [name for name in names[:10]]
...名前ごとに個別の変数を作成する代わりに。
次に、テンプレートで:
{% for name in names %}
{% if name %}
...
{% endif %}
...
{{name}}
...
{% endfor %}
私が知る限り、それはあなたのコードと同じ効果がありますが、テンプレートではなくビューで名前の集計を行うことになります。あなたのコードの意図を間違って読んでいる場合は、より多くのコンテキストを提供してください。ただし、テンプレート ロジック を必要とすることをしているようには見えません。