Django 使用两个不同的数据集在模板中填充 table
Django populating table in template with two different data sets
我有问题。我需要用两组不同的数据填充一个 table,一组是查询集,另一组是列表。有什么方法可以使用一个 {% for %}
语句用两组数据填充 table 吗?
类似于{% for categories, expenses in categoriesList and expensesList %}
。
您可以使用 zip
。在你看来,你可以准备这个:
def some_view(request):
categoriesList = …
expensesList = …
context = {
'categoriesList': categoriesList,
'expensesList': expensesList,
<b>'categoriesExpenses': zip(categoriesList, expensesList)</b>
}
return render(request, 'some_template.html', context)
在模板中,您可以枚举 categoriesExpenses
:
{% for categories, expenses in <b>categoriesExpenses</b> %}
…
{% endfor %}
也就是说,如果 categoriesList
是 expenses
的 categories
列表,可能有更优雅和有效的方法来执行此操作。如果从 Expense
模型到 Category
有一个 ForeignKey
,您可以加载它们并遵循关系。
我有问题。我需要用两组不同的数据填充一个 table,一组是查询集,另一组是列表。有什么方法可以使用一个 {% for %}
语句用两组数据填充 table 吗?
类似于{% for categories, expenses in categoriesList and expensesList %}
。
您可以使用 zip
。在你看来,你可以准备这个:
def some_view(request):
categoriesList = …
expensesList = …
context = {
'categoriesList': categoriesList,
'expensesList': expensesList,
<b>'categoriesExpenses': zip(categoriesList, expensesList)</b>
}
return render(request, 'some_template.html', context)
在模板中,您可以枚举 categoriesExpenses
:
{% for categories, expenses in <b>categoriesExpenses</b> %}
…
{% endfor %}
也就是说,如果 categoriesList
是 expenses
的 categories
列表,可能有更优雅和有效的方法来执行此操作。如果从 Expense
模型到 Category
有一个 ForeignKey
,您可以加载它们并遵循关系。