温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

django模型是什么

发布时间:2020-09-08 14:44:16 来源:亿速云 阅读:147 作者:小新 栏目:编程语言

这篇文章将为大家详细讲解有关django模型是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

模型是一个定义数据源的数据,它包含要存储数据的一些属性和行为。通常,每一个模型对应数据库中的一个数据表。

每一个模型是django.db.models.Model的子类

每一个模型属性代表数据表的一个字段。

Django提供了自动生成的数据库访问API,使用模型操作数据库很方便

模型案例

下面的代码定义了Person模型,有first_name和last_name:

from django.db import models class Person(models.Model):
    first_name = models.CharField(max_length=30) 
    last_name = models.CharField(max_length=30)

first_name和last_name代表模型的field(属性),每一个属性对应到数据表的一个列,上面的模型代码对应的数据表将是如下:

CREATE TABLE myapp_person ( 
    "id" serial NOT NULL PRIMARY KEY, 
    "first_name" varchar(30) NOT NULL, 
    "last_name" varchar(30) NOT NULL );

表名称前缀 myapp 是在配置文件中配置的,可以覆盖id元素是自动添加的,也可以做一些自定义的操作这里的语句使用的是PostgreSQL语法,在settings.py中配置其它类型的数据库,可以生成对应数据库的语法

使用模型

当你定义好模型之后,你需要告诉Django你要用这些模型了,通过修改settings.py文件中INSTALLED_APPS部分来添加新的模块名称,包含刚定义的model。

# Application definitionINSTALLED_APPS = [    'myqpp',
    ...
]

添加新的模块之后,不要忘了运行迁移命令是模型生效。

python manage.py migrage

模型属性(Field)

Field是模型中最重要的部分,也是必须要有的部分。它定义了 Python 模型与数据表之间的对应关系。

注意定义属性名称时不要使用有冲突含义的字段名称。如save,clean,delete

Field Type

模型的每一个属性都应该是 Field 类的实例,Django使用Field类处理如下事情:

数据表 column 列的类型,Interger,VARCHAR, TEXT

字段验证validate。

关于django模型是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI