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 %}

也就是说,如果 categoriesListexpensescategories 列表,可能有更优雅和有效的方法来执行此操作。如果从 Expense 模型到 Category 有一个 ForeignKey,您可以加载它们并遵循关系。