首页 > 其他分享 >django_模型层及ORM介绍

django_模型层及ORM介绍

时间:2022-12-15 22:45:34浏览次数:48  
标签:定义 创建 数据库 层及 django ORM mysql

一、模型层介绍

1、作用:负责跟数据库之间进行通信

                        

 

 2、django通过驱动mysqlclient与mysql数据库进行通信,所以需要先安装。版本需要是1.3.13以上。

  如果直接安装报错,可以直接从官网下载whl文件。

 二、django与mysql关联

1、django默认带有sqlite3数据库,但是常规项目中使用mysql较多,所以以使用mysql为例进行演示。

2、创建数据库

(1)安装并mysql数据库;

(2)创建数据库,一般建议库名和app名称保持一致。语句:create databse music music default charset utf8;。一定要指定默认字符集是utf8,否则会无法识别英文。

                                      

    在SQLyog中查看,确实已经创建。

                                        

 (3)在seetting.py中进行数据库的配置。

  ENGINE:指定的数据库引擎,支持sqlite3\oracle\mysql等,此处为mysql;

  NAME:所要使用的库名,(1)中新建的是库music;

  USER、PASSWORD、HOST、PORT则是创建数据库的基本信息。

                                          

 

 

三、模型的定义

1、模型的定义如下:

                                  

 

 2、模型本质是一个类,可以节省操作数据库所需要的的一系列sql语句操作,只需要遵循类的相关属性和操作方法即可实现。

四、ORM框架

1、定义

                            

 

                         

 

 

                        

 

 2、ORM和数据库之间的映射

                             

 

 

五、ORM实战实例

1、创建一个新的应用,名称为bookstore,并注册;

 

 

                                      

 

 2、在bookstore模块下的models.py文件中添加ORM。在models.py中一个类代表一个数据表,类中的属性即表的字段名,对于属性的定义即表字段的定义。

 

 

3、迁移数据库

  (1)我们期望在model中定义了表、字段字段之后,能够将变化同步到数据库中,这个同步的过程不是自发进行的,而需要去手动执行,因此称之为数据库迁移(前文在setting中定义数据库的库、连接信息等,此处同步的信息将同步到配配置的库中)

                

 

   (2)生成迁移文件

    注意:当有多个应用时,需要在makemigrations后面指定app的名字

       

 

   (3)执行迁移脚本。指令:python manage.py migrate

             

 

   注意:执行的迁移程序时,django会将系统默认自带的一些表格也创建到数据库中。

  (4)查看创建的表信息。

    注意:定义的表名为Book,但实际创建的表名为bookstore_book。即“应用名+类名”。统一成小写。创建的其他表信息为django自带的。

                                               

 

              

 

 

六、总结

1、模型层介绍

2、配置mysql

3、ORM与创建模型类

 

标签:定义,创建,数据库,层及,django,ORM,mysql
From: https://www.cnblogs.com/xiaoxiami1995/p/16980989.html

相关文章

  • ORM执行SQL语句、ORM外键字段创建、ROM跨表查询
    ORM执行SQL语句神奇的双下划线查询ORM外键字段的创建外键字段的增删改查ORM跨表操作基于对象的跨表查询基于双下化线的跨表查询进阶操作ORM执行......
  • orm查询操作 以及多表的查询
    今日内容详细ORM执行SQL语句有时候ORM的操作效率可能偏低我们是可以自己编写SQL......
  • Django之ORM相关操作
    Django之ORM相关操作目录Django之ORM相关操作ORM执行SQL语句神奇的双下划线查询ORM外键字段的创建外键字段相关操作ORM跨表查询基于对象的跨表查询基于上下划线的跨表查询......
  • WinForm(十)项目框架结构
    看到下面的项目结构,是否曾经相识?不要笑,这也是一种项目结构,极简主义。   项目结构没有对错,合适就好,但也要有几个要求,至少要做到结构明确,清晰,当然上图的结构......
  • Django框架:7、模型层之ORM执行SQL语句、双下划线查询、ORM外键字段的创建、ORM跨表查
    目录一、ORM执行SQL语句二、神奇的双下划线查询三、ORM外键字段的创建复习MySQL外键关系外键字段的创建1.创建基础表(书籍表、出版社表、作者表、作者详情)2.确定外键关系3......
  • ORM执行sql语句 双下划线 外键字段创建 ORM跨表查询
    目录模型层之ORM执行SQL语句方式一方式二:神奇的双下划线查询ORM外键字段的创建外键字段相关操作ORM跨表查询正反向查询的概念(重要)正向查询反向查询ORM跨表查询的口诀(重......
  • WinForm(十)项目框架结构
    看到下面的项目结构,是否曾经相识?不要笑,这也是一种项目结构,极简主义。   项目结构没有对错,合适就好,但也要有几个要求,至少要做到结构明确,清晰,当然上图的结构......
  • WinForm(十)项目框架结构
    看到下面的项目结构,是否曾经相识?不要笑,这也是一种项目结构,极简主义。 项目结构没有对错,合适就好,但也要有几个要求,至少要做到结构明确,清晰,当然上图的结构清晰,但不明......
  • ORM执行SQL语句,神奇的双下划线查询,ORM外键字段的创建,外键字段数据的操作,多表查询
    ORM执行SQL语句,神奇的双下划线查询,ORM外键字段的创建,外键字段数据的操作,多表查询一、ORM执行SQL语句有时候ORM的操作效率较低,我们是可以自己来编写SQL语句的方式一:......
  • WinForm(九)UI加载“大”数据
    由于WinForm的UI是绘制的,所以在加载大量数据数据时会有一定的延时,本篇就讨论几个减少延时的方法。在加载有规律数据时,可以考虑用递归,简单方便快捷来加载数据,如下,......