0

ファイル名が異なるファイルを条件付きで含める方法を見つけたいと思います。以下の例では、関連する時間に para-ford.txt または para-mazda.txt をテンプレートに含めたいと思います。もちろん、この例は失敗します。これは、テンプレート エンジンが {{car.maker}} の内部で {% include ... %} を置換しないためです。

{% for car in cars %}
<p>{% include "para-{{car.maker}}.txt" %}</p>
{% endfor %}

「cars」コレクションの各アイテムには、「ford」、「mazda」などを含む「maker」プロパティがあります。

4

1 に答える 1

2

これを解決する 1 つの方法は、モデルにメソッドを追加することです。

# models.py
class Cars(models.Model):
    maker = models.CharField(max_length=200)

    def get_maker_template(self):
        return "para-{0}.txt".format(self.maker)

# template
{% for car in cars %}
<p>{% include car.get_maker_template %}</p>
{% endfor %}
于 2013-05-30T23:57:45.450 に答える