创建Django对象时如何指定日期字段格式

我有一个模型团队

class Team(models.Model):                             
    team = models.IntegerField(primary_key=True)      
    name = models.CharField(max_length=170)         
    code = models.CharField(max_length=20)          
    logo = models.URLField(null=True)
    country_id = models.ForeignKey('Country',null=True,on_delete=models.SET_NULL)                     
    founded = models.DateField(null=True)
    venue_name = models.CharField(max_length=170)
    venue_surface = models.CharField(max_length=170)
    venue_address = models.CharField(max_length=200)                                                
    venue_city = models.CharField(max_length=150)                                                   
    venue_capacity = models.IntegerField(null=True)                                                 
    lastModified = models.DateTimeField(auto_now=True)

我想从此模型创建对象,其中 founded 字段的输入数据仅是年份数据,例如 1970

我该怎么做。预先感谢

ssnt321 回答:创建Django对象时如何指定日期字段格式

如果您只想存储创建字段的年份,则可以尝试使用PositiveSmallIntegerField

class Team(models.Model):                             
    # Other Fields                   
    founded = models.PositiveSmallIntegerField(null=True)

您可以添加自己的验证器,或使用模型的clean方法来验证用户是否输入了正确的年份。

如果只想使用DateField,则在这种情况下,必须为日期和月份提供默认值,如果年份是1970,则可以像01/01/1970和可以使用obj.founded.year

访问年份
本文链接:https://www.f2er.com/3102832.html

大家都在问