Django中ORM的基本使用教程

作者:JonnyJiang-zh 时间:2021-09-10 00:35:46 

前言

Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架

到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞:

  • 创建数据库,设计表结构和字段

  • 使用 MySQLdb 来连接数据库,并编写数据访问层代码

  • 业务逻辑层去调用数据访问层执行数据库操作

ORM

orm(object-relation-mapping)对象关系映射,即用对象来表示关系数据库中的表:

类 --> 表,

对象-->一行数据

对象的属性-->一行属性的一个字段

比如说一个用户信息表:


class User:
def __init__(self,name,age):
 self.name = name
 self.age = age

这样我们就定义了一个类,有name和age属性,之后我们每创建一个对象都有一个自己的name和age值,就好比我们创建了一个表格,有name和age字段,每一行数据都有自己的name和age。

那么我们怎么在Django中应用呢,首先,Django使用了MVT模型,即:模型、视图、模板,相较于MVC(模型-视图-控制器)而言,其中MVT中的T(templates)和MVC中的V(views)都表示一种可以看得见的一种数据渲染图,而MVT(views)和MVC中的C(controls)都表示一种逻辑,即当浏览器请求的时候服务器该怎么返回数据,最后,MVT中的M(models)和MVC中的M(models)都表示数据存储部分,即数据库。

于是,如果我们需要创建表格就要创建类,就要在modles.py中创建,如下:


from django.db import models

# Create your models here.

class User(models.Model):
username = models.CharField(max_length=32)
password = models.CharField(max_length=32)

其中CharFiled相当于数据库中的varchar,与之对应的还要Decimal、Datatime等等。

接下来就是我们要把数据存储在哪个数据库了,好在Django自己生成了一个 db.sqlite3 文件,那么接下来我们就要去setting.py文件中去配置数据库,如下:

Django中ORM的基本使用教程

然后就需要打开我们的sqlite数据库文件看看了,这里,我们如果使用pycharm,可以按如下操作:

点击侧边那里

Django中ORM的基本使用教程

选择类型

Django中ORM的基本使用教程

点击图标

Django中ORM的基本使用教程

找到sqlite3文件然后应用。

Django中ORM的基本使用教程

此时发现:

Django中ORM的基本使用教程

中并没有user表,这时,我们需要再执行两条终端命令:

打开终端

Django中ORM的基本使用教程

第一条命令: python manage.py makemigration
第二条命令: python manage.py migrate

然后刷新:

Django中ORM的基本使用教程

就可以看到表格了,双击就可以进行编辑啦!!!

来源:https://www.cnblogs.com/JonnyJiang-zh/p/14170202.html

标签:django,ORM,使用
0
投稿

猜你喜欢

  • pytorch中使用LSTM详解

    2021-01-08 04:27:10
  • python利用socket实现客户端和服务端之间进行通信

    2022-04-23 07:34:59
  • 在Python中操作列表之list.extend()方法的使用

    2023-07-02 20:43:16
  • 关于Golang中for-loop与goroutine的问题详解

    2024-04-29 13:03:16
  • Python函数用法和底层原理分析

    2023-09-13 23:42:37
  • JS 判断undefined的实现代码

    2024-04-19 09:53:58
  • Django 设置admin后台表和App(应用)为中文名的操作方法

    2023-01-31 13:37:54
  • Python 动态绑定属性和方法 

    2021-03-02 21:25:34
  • Javascript 阻止javascript事件冒泡,获取控件ID值

    2023-07-02 05:25:57
  • Python开发之快速搭建自动回复微信公众号功能

    2022-06-27 03:08:04
  • vue实现小球滑动交叉效果

    2024-04-30 10:30:09
  • 12种最常用的网页编程语言简介(值得收藏)

    2023-01-29 17:40:48
  • 简单介绍Python中的filter和lambda函数的使用

    2023-05-30 18:18:36
  • SQL 多条件查询几种实现方法详细介绍

    2024-01-16 23:12:31
  • pygame实现贪吃蛇游戏(上)

    2022-07-10 20:48:10
  • JavaScript设计模式---单例模式详解【四种基本形式】

    2024-05-05 09:05:21
  • python3实现网页版raspberry pi(树莓派)小车控制

    2021-05-05 05:35:18
  • 用JMail、CDONTS发送邮件asp源码

    2007-09-24 15:58:00
  • 科讯商业版中用到的ajax空间与分页函数

    2024-04-17 10:05:45
  • asp如何实现页面延迟?

    2010-06-03 10:18:00
  • asp之家 网络编程 m.aspxhome.com