【问题标题】:Django -- One Template used with multiple variablesDjango -- 一个模板与多个变量一起使用
【发布时间】:2016-09-01 14:15:37
【问题描述】:

我正在尝试在 HTML 表格中显示工单列表。该表有各种标题来显示票证的各个方面。我想在我的项目中的许多不同位置展示同一张表。

我制作了一个/templates/shared/ticket_list.html 模板,其中显示了票证列表,然后我在需要显示此列表的地方{% include %} 它。很简单。

但是,在我的项目中有几个页面,我有一个 Bootstrap tabbed div。我想在 both 选项卡中显示这张票证表,但使用一组不同的票证。用于此的 HTML 本质上要求我在同一个 HTML 页面上 {% include %} 我的表格模板两次。

例如:

  • 标签 1:“由用户创建”——当前用户创建的工单列表
  • 选项卡 2:“分配给用户”——分配给当前用户的工单列表

在视图中,我可能有类似的东西:

created_by_ticks = Ticket.objects.filter(created_by = self.request.user)
assigned_to_ticks = Ticket.objects.filter(assigned_to = self.request.user)

问题是,在我的工单表模板中,我将如何呈现两个查询集,因为表本身可能需要一个变量名,例如:

{% for t in tickets %}
<tr>...

{% endfor %}

但是传入两个工单查询集,我现在有两个工单变量created_by_ticksassigned_to_ticks

任何想法我可以如何使用该单票表格模板,但使用多个变量,或其他一些解决方案?

【问题讨论】:

    标签: django django-templates


    【解决方案1】:

    您可以使用包含标签的with 功能:

    {% include 'shared/ticket_list.html' with tickets=created_by_ticks %}
    {% include 'shared/ticket_list.html' with tickets=assigned_to_ticks %}
    

    【讨论】:

    • 不错!我想会有一个我没有想到的简单解决方案。我会试一试。谢谢
    猜你喜欢
    • 2017-07-16
    • 1970-01-01
    • 2018-05-07
    • 2011-01-31
    • 2011-03-12
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 2015-02-04
    相关资源
    最近更新 更多