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': ...
随机推荐
- [codevs3955]最长严格上升子序列(加强版)
题目大意:给你一个序列,要你求该序列中最长严格上升子序列的长度. 解题思路:此题算是一道LIS模板题.普通的$O(n^2)$的LIS是会TLE的,因为$n\le 1000000$,所以此题要用单调队列 ...
- Django学习之配置篇
MTV Model Template View 数据库 模版文件 业务处理 了解Django框架,功能齐全 一.安装Django&Django基本配置 安装Django pip3 django ...
- Unity shader UI的3D效果
原创,转载请标明出处 1.效果 scene视图中的效果: game视图中效果: 2.核心思想:改变UI的顶点坐标 3.好处:可以用正交相机来实现3D效果. 4.Shader 实现 // Unity b ...
- HTTP——学习笔记(5)
我们通信的过程中会有哪些风险?: 1.HTTP不会对通信方的身份进行确认 因为HTTP协议中的请求和相应不会对通信方进行确认,就是不管发送或接收信息的人是不是之前的人,都不妨碍信息的发送或接收. 缺点 ...
- 【codeforces 257D】Sum
[题目链接]:http://codeforces.com/problemset/problem/257/D [题意] 给你n个数字; 这n个数字组成的数组满足: a[i-1]<=a[i]< ...
- C#-CLR各版本特点
来自为知笔记(Wiz) 附件列表 CLR与NET版本关系.png NET框架工作流程.png VS与CLR关系.png
- 集群环境下,Session管理的几种手段
集群环境下,Session管理的几种手段 1.Session复制 缺点:集群服务器间需要大量的通信进行Session复制,占用服务器和网络的大量资源. 由于所有用户的Session信息在每台服务器上都 ...
- iOS代码添加视图约束
项目要做这样一个效果的启动页. 考虑到版本号是会不断变更的,因此采用动画效果启动页,让版本号动态加载iOS启动页动画效果 - 简书 考虑到屏幕适配问题,因此采用代码对视图添加约束.在添加约束的过程中遇 ...
- poj--1904--King's Quest(scc建图)
King's Quest Time Limit: 15000MS Memory Limit: 65536KB 64bit IO Format: %I64d & %I64u Submit ...
- Java基础学习(一) -- Java环境搭建、数据类型、分支循环等控制结构、简单一维数组详解
一:java概述: 1982年,SUN公司诞生于美国斯坦福大学校园,并于1986年上市,在NASDAQ(纳斯达克:是全美证券商协会自动报价系统)的标识为SUNW,2007年改为JAVA. 2009年4 ...