我正在尝试将url参数传递给这样的django模板…
response = render_to_string('persistConTemplate.html', request.GET)
这是我的views.py文件中的调用行。persistConTemplate.html是我的模板的名称,request.GET是包含url参数的字典。
在模板中,我尝试使用像这样的参数之一…
{% for item in (numItems) %} item {{item}} {% endfor %}
numItems是我在请求中这样发送的url参数之一…
http:/someDomain/persistentConTest.html/?numItems=12
当我尝试上面的for循环时,我得到这样的输出。
image 1 image 2
我期待并希望看到字图像印刷12次…
image 1 image 2 image 3 image 4 image 5 image 6 image 7 image 8 image 9 image 10 image 11 image 12
谁能告诉我我怎么了?
是的,此位置在视图中。
我觉得上面的示例不起作用-你不能迭代整数。
numItems = request.GET.get('numItems') if numItems: numItems = range(1, int(numItems)+1) return direct_to_template(request, "mytemplate.html", {'numItems': numItems}) {% for item in numItems %} {{ item }} {% endfor %}
你可以使用添加过滤器将str强制转换为int
{% for item in numItems|add:"0" %}
强制int只是使用slugify
{{ some_int|slugify }}
编辑:也就是说,我同意其他人的看法,通常你应该在视图中执行此操作-仅在替代方法更差时使用这些技巧。