我正在尝试为Date,Integer和CharFields等少数字段设置默认值,但是当我将其设置为default=12
时(如果是整数),则不会在页面中反映出来。但是,始终显示默认值零。
Months = models.IntegerField('Enter the month',default=12
以上字段是必填字段,因此默认情况下会以形式显示0,但不会显示除零之外的任何字段。
与charField和DateField的情况相同,在这种情况下,表格中根本不显示任何内容。
我在后端使用mySQL。
我想将默认日期设为'0000-00-00'
,我该怎么做?
答案 0 :(得分:0)
此默认值会按照您的建议添加
Months = models.IntegerField('Enter the month',default=12...
但是,当创建对象并且没有收到此字段的任何值时,此值将仅用于
示例:
class Year (models.Model):
name = models.CharField(max_length=75)
months = models.IntegerField(default=12)
现在在控制台/视图中你可以这样做:
new_year = Year(name='any_name')
new_year.save() # And the Year object is created with months = 12
答案 1 :(得分:0)
您应该检查默认值是否实际存在。如果在创建模型并应用syncdb后添加了默认值,请确保运行makemigrate(在Django 1.7上)或外部应用程序(如South)以更改数据库表。如果您没有,或者您只运行syncdb,则此更改不会反映在您的MySQL上。