django 笔记4 数据库操作
django操作数据库
orm操作
select * from tb where id >
对应关系
models.tb.objects.filter(id__gt=)
models.tb.objects.filter(id=)
models.tb.objects.filter(id__lt=) 创建类
-根据类自动创建数据库表
#models.py操作
#######################################
from django.db import models
# Create your models here. #表名会默认为app01_userinfo
class UserInfo(models.Model):
#创建用户名列 字符串类型 指定长度
#默认会创建个id列 且自增 为主键
username = models.CharField(max_length=)
password = models.CharField(max_length=)
#######################################
python manage.py makemigrations No changes detected 表示要去找models 所以在settings中的 INSTALLED_APPS=[添加个app名称]
migrations记录了生成数据库表结构的一些数据0001_initial.py
python manage.py migrate 生成数据库且会生成表 -根据类对数据库表中的数据进行各种操作 若要改为MySQL连接 需要改settings 数据库配置文档 www.cnblogs.com/wupeiqi/articles/.html
DATABASES = {
'default':{
'ENGINE':'django.db.backends.mysql',
'NAME':'dbname',
'USER': 'root',
'PASSWORD': 'xx',
'HOST':'',
'PORT':''
}
}
注意:
MySQLdb模块在Python3是没有的
在project中的__init__.py 即settings同级的__init__.py文件添加
import pymysql
pymysql.install_as_MySQLdb() 增删改查
#################################################################
from app01 import models
def orm(request):
#创建数据的方法1 一行插入数据
models.UserInfo.objects.create(
username='root',
password=''
)
#创建数据的方法2
obj = models.UserInfo(username='ljc',password='')
obj.save() #创建数据方法3
dic = {'username':'eric', 'password':''}
models.UserInfo.objects.create(**dic)
return HttpResponse('orm') def select(request): #查找数据
result = models.UserInfo.objects.all() #表示所有数据都拿到
#result QuerySet 是Django提供的 可以理解为列表[]
#[obj1(id, username, password), obj2, obj3] 是UserInfo的对象
for row in result:
print(row.id,row.username, row.password) result = models.UserInfo.objects.filter(username="root") #查找条件 username='root'的 如果username,password 是and共同拥有
for i in result: print(i.username)
return HttpResponse(result[]) def delete(request): #删除数据
models.UserInfo.objects.filter(id=).delete() #filter类似where条件
return HttpResponse() def update(request): #修改数据
models.UserInfo.objects.all().update(password=) #将密码全部改为666
return HttpResponse()
#################################################################
django 笔记4 数据库操作的更多相关文章
- 关于Django中的数据库操作API之distinct去重的一个误传
转载自http://www.360doc.com/content/18/0731/18/58287567_774731201.shtml django提供的数据库操作API中的distinct()函数 ...
- Django【第5篇】:Django之ORM数据库操作
django之ORM数据库操作 一.ORM介绍 映射关系: 表名 -------------------->类名 字段-------------------->属性 表记录-------- ...
- 【Django】Django model与数据库操作对应关系(转)
Django对数据库的操作分用到三个类:Manager.QuerySet.Model. Manager的主要功能定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以以models.Manag ...
- django之ORM数据库操作
一.ORM介绍 映射关系: 表名 -------------------->类名 字段-------------------->属性 表记录----------------->类实例 ...
- django基础之数据库操作
Django 自称是“最适合开发有限期的完美WEB框架”.本文参考<Django web开发指南>,快速搭建一个blog 出来,在中间涉及诸多知识点,这里不会详细说明,如果你是第一次接触D ...
- Django框架----ORM数据库操作
一.ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用 ...
- 用户增删改查 django生命周期 数据库操作
一 django生命周期 1 浏览器输入一个请求(get/post)2 响应到django程序中3 执行到url,url通过请求的地址匹配到不同的视图函数4 执行对应的视图函数,此过程可以查询数据库, ...
- ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )
//TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...
- Django简单的数据库操作
当然,本篇的前提是你已经配置好了相关的环境,这里就不详细介绍. 一. 在settings.py文件中设置数据库属性. 如下: DATABASES = { 'default': { 'ENGINE': ...
随机推荐
- python yield 生成器的介绍(转载)
您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ? 我们先抛开 generator,以一个常见的编程题目来展示 yield ...
- 一线 | 中国联通宣布首批5G手机到位
腾讯<一线> 作者郭晓峰 据中国联通相关人士今日透露,中国联通用于 5G 友好体验的首批合作 5G 手机全部到位.有 12 个品牌共 15 款 5G 手机及 5G CPE,包括.华为. O ...
- CloudStack云基础架构的一些概念
1. Zones(区域) 一个区域在CloudStack配置中是最大的组织单元.一个区域通常代表一个单独的数据中心,虽然在一个数据中心也允许有多个区域.将基础架构设施加入到区域中的好处是提供物理隔离和 ...
- Oracle with as 嵌套
oracle with as可以理解为临时视图,可以极大的简化sql语句,并且支持嵌套使用. With c3 As(Select * From v_tr_daily Where p_date=to_ ...
- hdoj-1212-Big Number【大数取余&简单题】
Big Number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Su ...
- bzoj1070: [SCOI2007]修车(费用流)
1070: [SCOI2007]修车 题目:传送门 题解: 一道挺简单的费用流吧...胡乱建模走起 贴个代码... #include<cstdio> #include<cstring ...
- poj--1703--Find them, Catch them(并查集巧用)
Find them, Catch them Time Limit: 1000MS Memory Limit: 10000KB 64bit IO Format: %I64d & %I64 ...
- QuerySet和对象的例子 个人记录
import osif __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE&quo ...
- Redis的好处知识
参考文章 http://www.cnblogs.com/wupeiqi/articles/5132791.html 使用Redis有哪些好处? () 速度快,因为数据存在内存中,类似于HashMap, ...
- Deleting elements
There are several ways to delete elements from a list. If you know the index of the element you want ...