美文网首页
python3 Django model.py 关于id重新设置

python3 Django model.py 关于id重新设置

作者: Xmaxdev | 来源:发表于2019-05-16 16:41 被阅读0次

如果了解Django框架model.py机制的小朋友都应该知道
id不需要自己写,执行

python3 manage.py makemigrations TestModel # 让 Django 知道我们在我们的模型有一些变更
python3 manage.py migrate # 创建数据库

都会自动生成id主键,且没办法修改名字和长度还有默认值

好了,现在实现出来

# 用户
class User(models.Model):
    user_id = models.UUIDField(primary_key=True, auto_created=True, default=uuid.uuid4, editable=False)
    user_full_name = models.CharField('用户名', max_length=30, null=True, blank=True, )
    user_name = models.CharField('账号', max_length=30)
    user_password = models.CharField('密码', max_length=30)
    user_email = models.CharField('邮箱', max_length=45, null=True, blank=True)
    user_sex = models.IntegerField('性别')
    user_age = models.IntegerField('年龄')
    user_phone_number = models.CharField('电话号码', null=True, blank=True,max_length=20,)
    user_card = models.CharField('身份证号码', max_length=30)
    role = models.ForeignKey('Role', on_delete=models.CASCADE)
    createby = models.CharField('创建者', max_length=32)
    createtime = models.DateTimeField('创建时间', default=timezone.now)
    updateby = models.CharField('更新者', max_length=32, null=True)
    updatetime = models.DateTimeField('更新时间',  blank=True, null=True)
    is_active = models.IntegerField('是否使用', blank=True, null=True, default=1)
    img_url = models.ImageField('头像', upload_to='img', blank=True, null=True)  

    class Meta:
        db_table = 'sys_user'


    def get_id(self):
        return self.id

主键,默认32位uuid

相关文章

网友评论

      本文标题:python3 Django model.py 关于id重新设置

      本文链接:https://www.haomeiwen.com/subject/njniaqtx.html