PyQオフィシャルブログ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

Djangoの {% ... %} は何ですか?

Djangoを学び始めると、今までPythonの世界だけで学んでいたことから広がった独自の作法などが登場しますね。 モデルについてもそうですし、今回のDjangoテンプレートについても独自の記法が存在します。

PyQ ではDjangoでのWebアプリケーションの作り方も学べます。 PyQのスタンダードプランではもちろん、Djangoについての質問もお答えできます。

今回はそんなDjangoに関する内容でいただいた質問をご紹介します。

質問

{% if ... %} や {% for ... in ... %} など {% ... %} は何ですか?

回答

こちらはDjangoについてのご質問ですね。お答えします。 この {% ... %} で囲まれた部分は「テンプレートタグ」というものです。 Djangoテンプレートの、記法の一つです (プログラミング言語Pythonとしての話ではありません)。

テンプレート | Django documentation | Django

この {% ... %} 「テンプレートタグ」は、「この部分で何かテンプレートの 動作 をさせるよ」という意味になります。

例えば {% for item in items %} の場合は「for でループする」という動作をするテンプレートタグです。

{% for ... %}...{% endfor %} で囲まれた部分が、ループの回数分表示(HTMLなどが描画)されます。 items という変数をループして item を取り出し、 item.name を複数表示するテンプレートは以下になります。

{% for item in items %}
    {{ item.name }}
{% endfor %}

他にも {% if ... %} ... {% endif %}{% url ... %} など、テンプレートタグはいくつかあります。 Djangoではテンプレートを使って、ブラウザーで表示するためのHTMLを動的に作れます。

Djangoについての疑問などあれば、漠然とした質問や「モヤモヤ」でも歓迎ですのでぜひPyQメールサポートにご質問ください。 悩んでいる時間やモヤモヤして集中できない時間を無くして、効率的に学習ができますよ。

pyq.jp

Copyright ©2017 BeProud Inc. All rights reserved.