Django中ORM实际应用
1. Django中ORM的使用
1. 手动新建一个数据库
2. 告诉Django连接哪个数据库
settings.py里面配置数据库连接信息:
# 数据库相关的配置项
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 告诉Django使用MySQL的那套代码
'NAME': 'day63', # 数据库的名字
'HOST': '127.0.0.1', # 主机
'PORT': 3306, # 端口
'USER': 'root', # 用户名
'PASSWORD': '123' # 密码
}
}
3. 告诉Django用pymysql模块代替默认的MySQLdb去连接MySQL
在和settings.py同目录下的 __init__.py文件中做配置
import pymysql
pymysql.install_as_MySQLdb()
4. 在app下面的models.py文件中 定义 类
必须要继承models.Model
class Publisher(models.Model):
id = models.AutoField(primary_key=True) # 自增的主键
name = models.CharField(max_length=64) # varchar(64)
5. 两条命令
1. python3 manage.py makemigrations --> 把models.py里面的改动登记到小本本上
2. python3 manage.py migrate --> 将登记的改动翻译成SQL语句,到数据库中执行
2. 新建Django项目的(最最基本的)步骤:
1. 创建项目(APP)
2. 创建数据库和配置数据库
3. 配置templates和静态文件相关
4. 注释掉 settings.py中 csrf那一行
3.小步骤汇总
1.展示所有出版社信息时

2.新增出版社信息时

3.修改出版社信息

4.书籍与出版社通过ORM建立外键关联

5.如何添加书籍并提供出版社信息


Django中ORM实际应用的更多相关文章
- Django中ORM介绍和字段及其参数
ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述 ...
- Django中ORM介绍和字段及字段参数 Object Relational Mapping(ORM)
Django中ORM介绍和字段及字段参数 Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简 ...
- Django 中ORM 的使用
一:Django 中 orm 的使用 1:手动新建一个数据库 2 :告诉Django连接哪个数据库 settings.py里配置数据库连接信息: #数据库相关的配置项 DATABASES ={ 'de ...
- Django中ORM的聚合索引
Django中ORM的聚合索引 在Django中,聚合函数是通过aggregate方法实现的,aggregate方法返回的结果是一个字典 在使用时需要先导入模块from django.db.mod ...
- 关于Django中ORM数据库迁移的配置
Django中ORM数据库迁移配置 1,若想将模型转为mysql数据库中的表,需要在settings中配置: DATABASES = { 'default': { 'ENGINE': 'django. ...
- Django中ORM的使用
Django中ORM的使用 ORM orm(object-relation-mapping)对象关系映射,即用对象来表示关系数据库中的表: 类 --> 表, 对象-->一行数据 对象的属性 ...
- Django中ORM创建表关系
一:django中ORM创建表关系 ORM创建外键关系 1.表与表之间的关系 1.表与表之间的关系 一对多 一对一 多对多 2.操作目标条件: 图书表 出版社表 作者表 作者详情表 3.外键关联 一对 ...
- Django中ORM对数据库的增删改查
Django中ORM对数据库数据的增删改查 模板语言 {% for line in press %} {% line.name %} {% endfor %} {% if 条件 %}{% else % ...
- 6月20日 Django中ORM介绍和字段、字段参数、相关操作
一.Django中ORM介绍和字段及字段参数 二.Django ORM 常用字段和参数 三.Django ORM执行原生SQL.在Python脚本中调用Django环境.Django终端打印SQL语句 ...
随机推荐
- 如何实现从Java入门到服务端项目开发的进阶?
对于打算入门或者刚刚入门学习Java的人来说,刚开始接触这门学科,往往会觉得不知所措,也会觉得很迷茫.结合前人经验,就从入门到进阶对于Java的学习而言,应该对于学习时间.目标和内容规划有一个清晰的定 ...
- mysql 生成时间序列数据 - 存储过程
由于时间自动转换为int值, 做一步转化,也可在调用时处理 use `test`; CREATE table test.test1 as SELECT state, id, `规格条码`, `色号条码 ...
- 【MatConvNet代码解析】 vl_nnsoftmaxloss
背景知识:http://deeplearning.stanford.edu/wiki/index.php/Softmax%E5%9B%9E%E5%BD%92 假设softmax层的输入(softmax ...
- jupyter notebook快捷键使用指南
Jupyter Notebook 是一个交互式笔记本程序, 其有丰富的快捷键来便捷的完成工作.Notebook 有两种键盘输入模式.即命令模式和编辑模式,这与 Vim 有些类似.在编辑模式下,可以往单 ...
- windows 命令相关
脚本执行后的返回值:echo %errorlevel%
- Ruby版快速排序
class Array def quick_sort return self if self.length<=1 k = self[0] head = 0 tail = self.length ...
- webRTC中音频相关的netEQ(一):概述
上篇文章(语音通信中终端上的时延(latency)及减小方法)说从本篇开始会切入webRTC中的netEQ主题,netEQ是webRTC中音频技术方面的两大核心技术之一(另一核心技术是音频的前后处理, ...
- ajax(读取json数据)
ajax知识点: 语法:$.ajax(路由,请求方式,返回的数据类型,数据参数,回调函数) url: "路由", type:"",默认get请求(get或pos ...
- .net 多线程之线程取消
//线程取消不是操作线程,而是操作信号量(共享变量,多个线程都能访问到的东西,变量/数据库的数据/硬盘数据) //每个线程在执行的过程中,经常去查看下这个信号量,然后自己结束自己 //线程不能别人终止 ...
- c#单例设计模式
class Person { private static Person persons; public static Person Persons { get{ if (persons==null) ...