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': ...
随机推荐
- linux 安装常用库
在CentOS安装软件的时候,可能缺少一部分支持库,而报错.这里首先安装系统常用的支持库.那么在安装的时候就会减少很多的错误的出现. [root@bogon 桌面]# yum install -y ...
- docker系列之一 image和container
docker images往往不知不觉就占满了硬盘空间,为了清理冗余的image,可采用以下方法: 1.进入root权限 sudo su 2.停止所有的container,这样才能够删除其中的imag ...
- vim 常用变量
为了vim更好的支持python写代码,修改tab默认4个空格有两种设置方法: 1. vim /etc/vimrc 1 set ts=4 2 set sw = 4 2. vim /etc/vimrc ...
- [MST] Remove Model Instances from the Tree
In this lesson we will dive a bit more into the tree semantics of MST. In this lesson you will learn ...
- windows环境利用apache 配置虚拟主机
windows环境利用apache 配置虚拟主机 1.改动http.host #LoadModule vhost_alias_module modules/mod_vhost_alias.so #In ...
- 2014 百度之星 1003 题解 Xor Sum
Xor Sum Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包括了N个正整数,随后 Prometheu ...
- [PHP]怎样在SAE的CodeIgniter项目中隐藏掉index.php
第一步:改动项目根文件夹的config.yaml文件.加入例如以下内容: handle: - rewrite: if(!is_dir() && !is_file() && ...
- POJ 3667 线段树+标记
自从某次考试写线段树写挂了以后 这是第一次写线段树,,,,,, 这是一个伤心的故事-- 题意: 思路: 标记 维护从左到右的最大值 从右到左的最大值 区间内的最大值-- 然后就一搞 就出来了 //By ...
- feign client传递对象
http://bbs.springcloud.cn/d/134-feign-client server端申明 @RestController public class HelloController ...
- AngularJs轻松入门(五)过滤器
在前面几节里我们已经接触过AngularJs的表达式,表达式的作用是向视图中输出字面量或$scope对象中的属性值.在输出之前我们可以通过过滤器来格式化输出的数据. 过滤器的使用非常简单,我们看一下下 ...