viewからtemplateにgeneratorを渡してループさせたいのですが期待通りに動作しません。
1 3
のように表示させたいのですが、なぜか3 3
のように表示されてしまいます。
問題点を教えていただければ幸いです。
views.py
from django.http import HttpRequest from django.template.response import TemplateResponse def main(request: HttpRequest): def gen(): dic = [{'a': 1, 'b': 2}, {'a': 3, 'b': 4}] for d in dic: for k, v in d.items(): setattr(Entity, k, v) yield Entity response = TemplateResponse(request, 'main.html', {'gen': gen}) return response class Entity(): pass
main.html
{% for g in gen %} {{ g.a }} {% endfor %}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/31 09:58