我有时会在模板中使用模型实例。例如,在下面的模型中,我可以使用 {{ leg }},我希望它会在 def unicode (self): 部分中显示信息。然而,时区使事情变得复杂。有没有办法让我的 def unicode (self): 当模型实例嵌入到带有模板标签的模板中时,参数可以感知时区?现在,它强制字符串(这是我的默认时区)的感知 unicode 日期表示,但这对用户没有意义。
class Leg(models.Model):
startpoint = models.CharField(max_length=50)
endpoint = models.CharField(max_length=50)
drive_date_time = models.DateTimeField(verbose_name='Start date and time', blank=True, null=True)
riders = models.ManyToManyField(Rider, blank=True)
drivers = models.ManyToManyField(Driver, blank=True)
carpool = models.ForeignKey(Carpool, blank=True, null=True)
open_to_prefs = models.BooleanField(default=True)
class Meta:
ordering = ['drive_date_time']
verbose_name = 'Drive leg'
def __unicode__(self):
return str(self.drive_date_time) + ' | to: ' + self.endpoint