文档章节

model数据库orm操作

o
 osc_z1hvg4cu
发布于 2018/04/24 18:36
字数 487
阅读 4
收藏 0

精选30+云产品,助力企业轻松上云!>>>

1》  修改数据库型类

      setting 文 件里面 配置数据库

 1 DATABASES = {
 2 
 3     'default': {
 4 
 5         'ENGINE': 'django.db.backends.mysql', 
 6 
 7         'NAME': 'books',    #你的数据库名称
 8 
 9         'USER': 'root',   #你的数据库用户名
10 
11         'PASSWORD': '', #你的数据库密码
12 
13         'HOST': '', #你的数据库主机,留空默认为localhost
14 
15         'PORT': '3306', #你的数据库端口
16 
17     }
18 
19 }

注意:

 1 NAME即数据库的名字,在mysql连接前该数据库必须已经创建,而上面的sqlite数据库下的db.sqlite3则是项目自动创建
 2 
 3 USER和PASSWORD分别是数据库的用户名和密码。
 4 
 5 设置完后,再启动我们的Django项目前,我们需要激活我们的mysql。
 6 
 7 然后,启动项目,会报错:no module named MySQLdb
 8 
 9 这是因为django默认你导入的驱动是MySQLdb,可是MySQLdb对于py3有很大问题,所以我们需要的驱动是PyMySQL
10 
11 所以,我们只需要找到项目名文件下的__init__,在里面写入:
    ubuntu 安装pymysql pip3 install pymysql 安装成功 /usr/local/lib/python3.5/dist-packages 会看到 PyMySQL-0.7.11.dist-info pymysql 如果使用pycharm 直接对应的python版本下在settings上安装插件即可 超级方便
12 13 import pymysql 14 pymysql.install_as_MySQLdb() 15 16 问题解决!

 表的创建  在项目model.py文 件中创建类

 1 from django.db import models
 2 
 3 # Create your models here.
 4 
 5 #定义好一表名为user的类 并执行python manage.py makemigrations  和 python manage.py migrate
 6 
 7 class User(models.Model):
 8     name = models.CharField(max_length=20) 
 9     age = models.IntegerField()
10     gender = models.BooleanField()

创建完成 注意在setting文 件中添把该项目添加进去执行以下代码:

1 pyhon manage.py makemigrations  
2 
3 python manage.py migrate

添加表数据

#方法一:
class.objcets.create(name = 'alxe'm age = 20) #直接插入

calss.objcets.create(**kw) #批量插入

方法二 : 类思想创建

obj = class(name = 'yuan',age = 30)
obj.save  #调用对象的方法来保存数据

修据数据:

class.objcets.filter(id = 1).update(name = 'sb' ,age = 18)

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
Django 源码小剖: Django 对象关系映射(ORM)

引 从前面已经知道, 一个 request 的到来和一个对应 response 的返回的流程, 数据处理和数据库离不开. 我们也经常在 views.py 的函数定义中与数据库打交道. django ORM 源代码组织结构 对于数...

daoluan
2013/10/12
0
0
ORM实例教程_转

转自:http://www.ruanyifeng.com/blog/2019/02/orm-tutorial.html 阮一峰 一、概述 面向对象编程和关系型数据库,都是目前最流行的技术,但是它们的模型是不一样的。 面向对象编程把所有实体...

yuxi_o
04/05
0
0
Django 基础 ORM系统

Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术。 简单的说,ORM...

osc_6y4us9hc
2018/01/20
49
0
ORM 实例教程

一、概述 面向对象编程和关系型数据库,都是目前最流行的技术,但是它们的模型是不一样的。 面向对象编程把所有实体看成对象(object),关系型数据库则是采用实体之间的关系(relation)连接...

城市之雾
2019/02/25
161
1
ORM实例教程_转

转自:http://www.ruanyifeng.com/blog/2019/02/orm-tutorial.html 阮一峰 一、概述 面向对象编程和关系型数据库,都是目前最流行的技术,但是它们的模型是不一样的。 面向对象编程把所有实体...

osc_emo7t12i
04/06
6
0

没有更多内容

加载失败,请刷新页面

加载更多

Hacker News 简讯 2020-07-10

更新时间: 2020-07-10 01:15 US Supreme Court deems half of Oklahoma a Native American Reservation - (reuters.com) 美国最高法院认为俄克拉荷马州的一半是印第安人保留地 得分:131 | 评...

FalconChen
56分钟前
16
0
OSChina 周五乱弹 —— 求求你吃了我吧,不要再玩弄食物的感情了

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @巴拉迪维 :张喆的单曲《陷阱 》 这首歌已经在网易找不到原唱了,不知道被哪家买了版权。#今日歌曲推荐# 《陷阱 》- 张喆 手机党少年们想听歌...

小小编辑
今天
26
1
清华陈文光教授:AI 超算基准测试的最新探索和实践。

道翰天琼认知智能平台为您揭秘新一代人工智能。 无规矩不成方圆。放在超级计算机的研发领域,没有一个大家普遍接受的算力评测指标,便难以推动超算迅猛发展。 而现在伴随着人工智能的发展,大...

jackli2020
今天
7
0
@RequestMapping, consumes 提交简单有意思的测试

getParm @GetMapping("getParm")public Result getParm(String id){ System.out.println(); return ResultFactory.success(id);} 等同于 == bodyParm @PostMapping("bodyParm......

莫库什勒
今天
25
0
63. Unique Paths II

题目: 63. Unique Paths II A robot is located at the top-left corner of a m x n grid (marked 'Start' in the diagram below). The robot can only move either down or right at any p......

JiaMing
今天
55
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部