django主键什么用(2023年最新解答)

导读:很多朋友问到关于django主键什么用的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

Django 主键自增

from django.db import models

# Create your models here.

class Student(models.Model):

    student_id = models.BigAutoField(primary_key=True)

这是model定义。

默认情况下,自增id都是从1开始计数的。如果你想从10001开始,就需要手动创建一个对象,为其设置student_id为10001,以后创建对象的studeng_id就从10002开始自动增加。

first_student =models.Student(student_id=10001)

first_student.save()

更多相关内容参考刘江的Django教程

django主键什么用(2023年最新解答)  第1张

django中model的主键的设置与自增

在django所定义的model里是可以自己设置主键的,具体方法为

但是要注意的是,为了添加元素的过程中主键的自增,主键的设置中不能加入default属性,否则save()的过程将不再是新建元素而是替换元素。

自己在最开始的定义是

AgentInfo_id = models.IntegerField(default=0)

由于设置了默认值,引发了不小的麻烦

Django Model 怎么使用 UUID 作为主键

Django 1.8现在有一个内置的UUID字段。

import uuidfrom django.db import modelsclass MyUUIDModel(models.Model): id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)

多看django文档啊。。。用到那就看那即可。不然看了后面忘了前面。

Django 使用uuid作主键

在实际开发中,我们有时需要使用UUIDField作为model的字段类型,下面简单介绍一下它的使用方法

一、作为主键使用

UUIDField 作为主键使用,必须将primary_key设置为true,default也必须有默认值,这里设置为uuid.uuid4

有一点必须注意,default不能设置为uuid.uuid4()

因为uuid.uuid4()返回的是一个确切的值,每次添加数据的时候默认值都是这个值,而主键是必须有唯一性的,所以就会报错。而uuid.uuid4为一个方法,每次添加数据时都会生成一个新值,满足需求。

二、作为非空字段, null设置为false

三、作为可为空的字段使用

这里建议设置default=None

django自带的ORM中model必须要主键吗

默认情况下,你不用手动添加,系统会给你添加类型为整数的主键。

结语:以上就是首席CTO笔记为大家整理的关于django主键什么用的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于django主键什么用的相关内容别忘了在本站进行查找喔。

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23 13:22
下一篇 2023-09-23 13:22

相关推荐

发表回复

登录后才能评论