Django 模板 - 如何将模型日期字段与日期生成器中的日期匹配?

Django template - How to match model datefield with a date in date generator?

在我的 models.py 任务中可以有多个雇主,所以我使用 ManyToManyField

在我的 views.py 中,我有一个日期生成器 - 它 return 从当天算起 2 周的范围。

这是我的模板

    <table>
        <thead>
            <tr>
                <th>{% trans 'employer_id' %}</th>
                {% for i in date_range %}
                <th>{{ i }}</th>
                {% endfor %}
            </tr>
        </thead>
        <tbody>
        {% for employer in employers %}
            <tr>
                <td>{{ employer.employer_id }}</td>
                {% for t in employer.task_set.all %}
                        <td>{{ t }}</td>
                    {% empty %}
                        <td>0</td>
                {% endfor %}
            </tr>
        {% endfor %}
        </tbody>
    </table>

我需要的是当我创建一个任务并将其分配给雇主时,它应该在 html table 每个雇主特定日期的 start_date 任务中显示.

到目前为止,我用上面的代码得到了这个:

^这些雇主的任务日期与 table header 中的日期不匹配。

而不是

            {% for t in employer.task_set.all %}
                    <td>{{ t }}</td>
                {% empty %}
                    <td>0</td>
            {% endfor %}

您需要再次遍历日期,因为您没有为每个日期创建 <td>

{% for i in date_range %}
{% for t in employer.task_set.all %}
{% if t.start_date == i %}
    <td>{{ t }}</td>
{% else %}
    <td>-</td>
{% endif %}
{% empty %}
   <td>0</td>
{% endfor %}
{% endfor %}