【发布时间】:2012-08-26 11:54:54
【问题描述】:
每次我使用 Django 编写代码时,都会遇到同样的问题(我认为这是由于我缺乏使用此框架的经验):
我知道如何将查询集的参数传递给模板以及如何显示它,但我不知道如何添加在视图中计算的参数并在模板中使用它们。
简单视图(我掌握): 示例:检索披萨列表并将其显示在模板中
views.py
Pizzas = Pizza.objects.all()
return render_to_response( "pizza.html" , {'pizzas':Pizzas} )
pizza.html
{% for pizza in pizzas %}
<li>pizza.name</li>
{% endfor %}
但是,假设我想添加一些链接到查询集的参数,但它们不像我在视图中计算的那样在数据库中,我不知道如何将此参数传递给模板以及如何使用它-> 编辑:我想按模板中的总卡路里订购我所有的披萨。
示例:对于每个披萨,我计算了卡路里数
views.py
Pizzas = Pizza.objects.all()
tab = []
for pizza in Pizzas:
# Compute some data and return the total number of calories for one pizza
total_number_calories = XXX
tab.append({'p':pizza,'calories':total_number_calories'})
return render_to_response( "pizza.html" , {'pizzas_calories':tab} )
pizza.html
?
我什至不确定将这些附加数据传递给模板的方式是否良好(创建一个表并将其作为参数传递给模板。
如果您有任何想法或最佳实践可以在 Django 中做到这一点,我会接受(很多使用 Django 的人也会这样做!)
【问题讨论】:
标签: django django-models django-templates