19

私の Django テンプレートでは、複数の場所で使用できるように、names url の値を with ブロック内の変数に割り当てる必要があります。

私はこのようなことを達成する必要があります:

{% for tag in post.tags.all %}
    {% with tagabs={%url showtag tag%} %}
          <li><a href="{{tagabs}}">#{{tag}}</a></li>
    {% endwith %}
{% endfor %}

しかし、明らかにそれは機能せず、解析エラーが発生します。上記の例は、{{tagabs}} の代わりに {%url showtag tag%} を使用し、with ブロックを削除するだけの簡単なシナリオです。しかし、私のシナリオでは、tagabs 値をいくつかの場所で使用し、比較のために if ステートメント内で使用する必要があります。

助けてくれてありがとう。

4

2 に答える 2

51

機能がコアにあるのに、なぜ新しいテンプレート タグ/フィルターを作成するのですか?

サンプルを見てください: https://docs.djangoproject.com/en/dev/ref/templates/builtins/#url

{% url 'path.to.view' arg arg2 as the_url %}

<a href="{{ the_url }}">I'm linking to {{ the_url }}</a>

{% url 'path.to.view' as the_url %}
{% if the_url %}
  <a href="{{ the_url }}">Link to optional stuff</a>
{% endif %}
于 2013-04-25T17:35:55.633 に答える