将年份设置为默认值Django
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将年份设置为默认值Django相关的知识,希望对你有一定的参考价值。
我在模型中有一个字段,默认为当前字段。所以我使用默认参数,并且editable为false,但是我得到了这个错误
未定义名称“年份”
我的模特
def Get_Year():
year = datetime.date.today().year
return year
class DisposalHeader(models.Model):
DisposalSecondaryKey = models.UUIDField(unique=True, default=uuid.uuid4, editable=False)
Year = models.IntegerField(editable=False, default=Get_Year)
Sequence = models.IntegerField(editable=False, default=Sequence_SysGen)
CostCenter = models.ForeignKey(CostCenter, on_delete=models.CASCADE)
Requestor = models.ForeignKey(User, on_delete=models.CASCADE)
SiteLocation = models.ForeignKey(SiteLocation, on_delete=models.CASCADE)
ItemType = models.ForeignKey(ItemType, on_delete=models.CASCADE)
Remarks = models.CharField(max_length=100, null=True)
错误屏幕截图
答案
尝试一下: year = datetime.datetime.now().year
另一答案
删除Get_Year
函数,因为我并不真正需要它。
然后按如下所示更改模型:
year = models.DateField(default=datetime.date.today)
然后,如果您只想显示年份,则可以在模板中使用必要的格式设置选项。
以上是关于将年份设置为默认值Django的主要内容,如果未能解决你的问题,请参考以下文章
Django ChoiceArrayField:如何设置默认值
如何设置像'YYYYMM'这样的Postgresql默认值日期戳?