如何在Django模型中定义DateField实现出生日期表单输入
Django模型中出生日期字段的正确定义
你的代码存在几处错误,以下是修正方案及说明:
模型类继承错误
原代码中class funder(models,Model):写法错误,Django模型必须继承自models.Model,且类名遵循大驼峰命名规范,应改为class Funder(models.Model):。出生日期字段语法错误
user_dob = models.DateField('none' = true)是无效写法,若允许用户不填写出生日期,需使用null=True, blank=True参数;若为必填字段,直接定义models.DateField()即可。还可添加verbose_name设置后台管理界面的友好字段名。状态字段默认值类型错误
user_status = models.PositiveIntegerField(default='1')中默认值是字符串类型,但字段为整数类型,应改为default=1。
修正后的完整代码:
# Create your models here. from django.db import models class Funder(models.Model): user_name = models.CharField(max_length=150) user_mobile = models.CharField(max_length=12) # 允许为空的出生日期字段,带友好显示名称 user_dob = models.DateField(verbose_name="出生日期", null=True, blank=True) user_address = models.TextField() # 整数类型的默认状态值 user_status = models.PositiveIntegerField(default=1)
补充说明:
null=True:允许数据库中该字段存储NULL值blank=True:允许表单提交时该字段为空(若为必填项,移除这两个参数即可)verbose_name:用于在Django后台管理界面显示更易读的字段名称,属于可选但推荐的优化项
内容的提问来源于stack exchange,提问作者Rahul Saxena
相关产品推荐
相关产品推荐

