先日ちょっとテンプレートを書いていて明らかにダサいなー、、、とおもっていたので @BUN にきいたところ、 Twig の for 文にはフィルタが使えるのを教えてもらった。
for - Adding a condition
https://twig.symfony.com/doc/2...
とりあえず書いたテンプレートがこんなかんじ。
{% for entry in query.all() %} {% for block in entry.case.case_open(1).all() %} {% if slug in block.case_scope %}
このループで、エントリのうち case_open
のラジオボタンが有効なエントリを取り出して、それの case_scope
を判定して取り出す、という感じで。
結果としては
{% for entry in query.all() %} {% for block in entry.case.case_open(1).all() if slug in block.case_scope %}
で問題なく動いた。
なるほどなー。
Twig周りの書き方とか色々教えてもらったので、またハマったときに思い出せるようにメモ。
多分思い出す前に質問しそうではある・・・。