django中模型类的创建

在人生的道路上,不管是潇洒走一回,或者是千山独行,皆须是自己想走的路,虽然,有的人并不是很快就能找到自己的方向和道路,不过,只要坚持到底,我相信,就一定可以找到自己的路,只要找到路,就不必怕路途遥远了。

导读:本篇文章讲解 django中模型类的创建,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

ORM框架:

1、一般需要在子应用projects中的models.py定义模型类(相当于数据库中的一张表)

2、必须继承Model或者Model的子类

3、在模型类中定义类属性(必须得为Field子类)相当于数据表中的字段

4、 CharField—》varchar

IntegerField—》integer

BooleanField—》bool

5、在migrations里,存放迁移脚本:python manage.py makemigrations 子应用名(projects),(如果不指定子应用名,会把所有的子应用生成迁移脚本)

6、执行迁移脚本:python manage.py migrate projects

7、链接数据库

django中模型类的创建

8、查询迁移脚本生成的SQL语句:python manage.py sqlmigrate 子应用名 0001_initial(迁移脚本名(无需.py))

9、生成的数据表名称默认为:子应用名_模型类名小写

10、默认会自动创建一个名为id的自增逐渐

django中模型类的创建

 如图:创建一个项目表

django中模型类的创建

 字段说明:

a、CharField类型必须指定max_length参数(该字段的最大字节数)max_length=20表示最大20个字符

b、项目名称可能会重复,为了不让项目名称重复,需要给一个字段添加唯一约束,unique=True(默认为False)

c、使用default 指定默认值(如果指定默认值后,在创建记录时,该字段传递,会使用默认值)

d、null=True指定,前端创建数据时,可以指定该字段为null,默认为null=False,DRF进行反序列化器输入时才有效

e、blank=True指定,前端创建数据时,可以指定该字段为空字符串,默认为blank=False,DRF进行反序列化器输入时才有效

f、在DateFiled、DateField等字段中,指定auto_now_add=True,在创建一条记录时,会自动创建记录时的时间作为该字段的值,后续在更新数据时,就不再修改

g、在DateFiled、DateField等字段中,指定auto_now=True,在更新一条记录时,会自动将更新记录的时间作为该字段的值,

h、只要修改表(ORM框架),就需要重新生成迁移脚本 python manage.py makemigrations 子应用名

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/123652.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
半码博客——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!