我想在那些从之前日期转移的日期打印一些消息。为此,我有两个模型,用于在同一个sit_date字段中存储前一个日期和新日期。这个模型是:
class Sitting(models.Model):
sit_date = models.DateField(blank=False,unique=True)
cut_off_date = models.DateField(null=True, blank=True)
ballot_date = models.DateField(null=True, blank=True)
sess_no = models.ForeignKey(Session,
on_delete=models.CASCADE)
genre = TreeForeignKey('Genre', null=True, blank=True, db_index=True)
使用上述模型的sit_date创建班次日期的另一种模型。当我创建班次日期时,此日期存储在Sitting模型的sit_date字段中。这是我的第二个模型:
class Shiftdate(models.Model):
shift_date = models.DateField(blank=False,unique=True)
sit_date = models.ForeignKey(Sitting,
on_delete=models.CASCADE)
shift_cut_off_date = models.DateField(null=True, blank=True)
shift_ballot_date = models.DateField(null=True, blank=True)
sess_no = models.ForeignKey(Session,
on_delete=models.CASCADE)
genre = TreeForeignKey('Genre', null=True, blank=True, db_index=True)
之后在模板中渲染sit_date时,我想检查哪个sit_dates等于Shiftdate模型的sit_dates。如果找到,表格中的班次日期行应该打印一条消息。到目前为止,我在我的模板中获得了以下代码:
{% for sitting in c.sittings %}
{% for shiftdate in sitting.shiftdate_set.all %}
{% if sittings.sit_date == shiftdate.sit_date %}
<p>Firstly it was scheduled on {{sitting.shift_date}}</p>
{% endif %}
{% endfor %}
{% endfor %}
但它打印了原始sit_date上的消息,而不是移动日期行。输出结果如下:
在上表中,您可以看到我原来的sit_dates是8月31日和9月1日,我的转换日期是9月14日和15日。但是消息&#34;首先它被安排在{{shiftdate.sit_date}}&#34;打印在原始sit_date而不是移动日期,现在坐标模型中也是sit_date。
有人可以建议解决这个问题的方法吗?