创建模型(数据库相关)
我们需要将使用者的提交记录都存到数据库表里以便追溯和统计,这里会在页面展示使用数
1、编写代码
在./apps/user/models.py下编写代码(类似于数据库语句),按照自己的需求来编排字段
class CreateUserTable(models.Model):
"""
创建用户
"""
id = models.AutoField(primary_key=True, verbose_name='主键id')
user_name = models.CharField(max_length=20, null=True, verbose_name='用户名')
is_marital = models.BooleanField(null=True, verbose_name='是否结婚')
environment = models.CharField(max_length=10, verbose_name='环境')
birthdate = models.CharField(max_length=30, null=True, verbose_name='出生日期')
weight = models.IntegerField(null=True, verbose_name='体重')
SEX_CHOICES = [
('1', '男'),
('2', '女')
]
sex = models.CharField(choices=SEX_CHOICES, max_length=10, verbose_name='性别')
personality_label = models.CharField(max_length=100, null=True, verbose_name='个性标签')
interest = models.CharField(max_length=100, null=True, verbose_name='爱好')
motto = models.TextField(null=True, verbose_name='座右铭')
create_time = models.DateTimeField(auto_now=True, verbose_name='创建时间')
update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间')
create_by = models.CharField(max_length=10, null=True, default='sys', verbose_name='创建人')
class Meta:
db_table = 'create_user'
2、创建表
在命令行执行以下命令后,TestDataFactory
数据库中会创建create_user
表
python manage.py makemigrations
python manage.py migrate
创建form表单字段
本功能使用form表单提交数据,则需要规范提交所需的字段,也可以加入参数规则对数据进行合法校验 (如字段长度、数据类型、数据的匹配等),当输入不合法的数据,会对使用者进行提示。./apps/user/form.py编写代码
class createUserForm(forms.Form):
"""
创建用户
"""
user_name = forms.CharField(max_length=20, min_length=1, required=True, error_messages={
'max_length': '用户名最大长度为10',
'min_length': '用户名最小长度为1',
'required': '用户名必填',
})
environment = forms.CharField(required=True)
is_marital = forms.BooleanField(required=True)
birthdate = forms.CharField(required=True)
sex = forms.IntegerField(required=True)
weight = forms.IntegerField(required=True)
personality_label = forms.CharField(max_length=100, required=False, error_messages={
'max_length': '个性标签为100',
})
interest1 = forms.CharField(required=False)
interest2 = forms.CharField(required=False)
interest3 = forms.CharField(required=False)
interest4 = forms.CharField(required=False)
interest5 = forms.CharField(required=False)
motto = forms.CharField(max_length=1000, required=False, error_messages={
'max_length': '座右铭最大长度为1000',
})
版权声明:如无特殊说明,文章均为本站原创,转载请注明出处
本文链接:http://zhangyanc.club/subject/article/tools_dajngo_modle/
许可协议:署名-非商业性使用 4.0 国际许可协议