如果在Html中调用模型



我有这个模型:

class Canva(models.Model):
name = models.CharField(null=True, blank=True, max_length=255)
site = models.CharField(null=True, blank=True, max_length=255)
month = models.CharField(null=True, blank=True, max_length=255)
year = models.IntegerField(null=True, blank=True)

def __str__(self):
return self.name

在html页面:当我写{{帆布。month}},它显示的值是JUNE

但是当我写:

{% if JUIN == canva。月%}

你好

{% else %}

<再见/strong>

{% endif %}

它总是对我说再见。

您应该与字符串进行比较,而不是与标识符进行比较,因此:

{% ifcanva.month == 'JUNE'%}
hello
{% else %}
goodbye
{% endif %}

然而,我会强烈建议使用DateTimeField,而不是将日期存储为字符串集合。例如保存'JUIN'而不是'JUNE'很容易,这使得比较两个日期(接近)是不可能的。

最新更新