day 67 django 之ORM 增删改查基础
一 操作基础前提准备
1、 新建django 项目 mysite 子项目app01 ,选择好做路径。
2 、2-1在app01 下面models 中引用 模块 from django.db import models
2-2新建一个类C(成功后的表明) 行参(models.Model)
2-3
id = models.AutoField(primary_key=True) #id 自增的数字
name = models.CharField(max_length=20) #varchar(20)
age = models.IntegerField() # 就是int 数字类型 空
2-4 得到的表明前缀是app01_C 想要得到不含有app01加上
class Meta:
db_table = 'C'
3、在settings 设置database
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'mysite',
'USER': 'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306'
}
}
4、在django 项目中的__init__ 引入
import pymysql
pymysql.install_as_MySQLdb()
5、在django 项目中的URLS引入 模块inclue (为了包含子项目的url)
from django.conf.urls import url ,include
from app001 import urls as app001_urls
urlpatterns = [
# url(r'^admin/', admin.site.urls),
url(r'^app001/', include(app001_urls)),
] 6在子项目app01中的URLS frkm app01
from app001 import views urlpatterns = [
# url(r'^admin/', admin.site.urls),
url(r'^user/', views.user ),
] 7 开启项目 两种方法
7-1 上面 RUN manage.py Talk
先登记 makemigrations + 子项目名称app
执行 migrate +子项目名称aPP
7-2 在下边的terminal
先登记 完整版 python manage.py makemigrations
执行 python manage.py migrate

---------------
from django.shortcuts import render
from django.shortcuts import redirect,render,HttpResponse
# Create your views here.
from app001 import models def user(request):
# user_list = models.User.objects.all()
# print(user_list) #因为里面没有内容 结果<QuerySet []> book_list1 = models.Book.objects.all() #查到所有的 在页面上显示
# print(book_list1[0].id,book_list1[0].title,book_list1[0].price) #里面有内容打印结果是对象 列表的格式 #t通过索引取值加上字段 可以取值 1 数学 12
#<QuerySet [<Book: Book object>, <Book: Book object>, <Book: Book object>, <Book: Book object>]>
# book_list2 = models.Book.objects.first()
# print(book_list2) #Book object # 关于filter(条件) 过滤的意思 结果是个列表
# book_list3 = models.Book.objects.filter(id=3)
# print(book_list3) #[<Book: Book object>]> 列表的形式 和拿取所有的.all() 一样
# book_list4 = models.Book.objects.filter(title='语文')
# print(book_list4) #[<Book: Book object>]> 列表对象 # get的取值不是列表 条件不满足就会报错
# book_list5 = models.Book.objects.get(title='语文')
# print(book_list5) #get 得到的是个字符串 Book object # 关于字典的键值对 取值 把字典拆成键值对的方式**的方法
# ?????????????????????????
# dic = {'name': 'wangyan', 'age': 29}
# f1 = models.User.objects.filter(**dic)
# print(f1)
# user_list = models.Book.objects.filter(**dic) #空列表
# print(user_list[0].name)
# # print(list(dic.values())) # 查找id 对应的内荣
# book_list5 = models.Book.objects.filter(id=2)
# if len(book_list5) >0:
# print(book_list5[0].title)
# else:
# print('没有这个用户') # 增加数据的两种方式(添加)
# 第一种
# new_book1 = models.Book(title='化学',price=8.8)
# new_book1.save()
# 第二种直接添加
# new_book2 = models.Book.objects.create(title='化学1',price=8.8)
# 删除数据
# models.Book.objects.filter(id=7).delete()
# 更改数据 通过查找到的字段 修改一整行的数据
# models.Book.objects.filter(id=6).update(title='政治')
# models.Book.objects.filter(title='化学1').update(title='哲学',price='20') return render(request, 'user.html',{'book_list1':book_list1})
day 67 django 之ORM 增删改查基础的更多相关文章
- Django中ORM增删改查
新建模型 class Author(models.Model): nid = models.AutoField(primary_key=True) name=models.CharField( max ...
- Django框架(三)—— orm增删改查、Django生命周期
目录 orm增删改查.Django生命周期 一.orm介绍 二.orm增删改字段 三.Django生命周期 orm增删改查.Django生命周期 一.orm介绍 1.什么是orm ORM即Object ...
- ORM增删改查并发性能测试2
前言 上一篇<ORM增删改查并发性能测试>出现了点小失误,有的输出SQL日志的代码没有禁用,数据库连接字符串可能有问题.统一环境,统一代码后,重新写一篇. 这次重点是并发性能测试,真不是为 ...
- 饮冰三年-人工智能-Python-24 Django ORM增删改查
一:首先使用默认的sqlite3创建表 1:现在在models.py中添加表模型 from django.db import models # Create your models here. cla ...
- django ORM 增删改查 模糊查询 字段类型 及参数等
ORM 相关 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (), gen ...
- Django 自带的ORM增删改查
通过Django来对数据库进行增删改查 1 首先创建类,在app应用程序里面的model模块里面创建类,写好数据库信息,方便我们待会初始化: 2 创建在django项目里面的settings里面添加 ...
- Django框架(三)-- orm增删改查、Django生命周期
一.orm介绍 1.什么是orm ORM即Object Relational Mapping,全称对象关系映射. 2.使用orm的优缺点 优点: 不用写SQL语句 开发效率高 缺点: SQL的效率低 ...
- day054 组件 CBV FBV 装饰器 ORM增删改查
组件: 把一小段HTML 放在一个HTML中 nav.html 使用: {% include ‘nav.html ’ %} 一. FBV 和CBV 1.FBV(function base ...
- ORM增删改查
目录 orm django 连接mysql顺序 1 settings配置文件中 2 项目文件夹下的init文件中写上下面内容, 补充 3 models文件中创建一个类(类名就是表名) 4.执行数据库同 ...
随机推荐
- android -------- WIFI 详解
今天简单的来聊一下安卓开发中的Wifi,一些常用的基础,主要分为两部分: 1:WiFi的信息 2:WiFi的搜索和连接 现在app大多都需要从网络上获得数据.所以访问网络是在所难免.但是在访问网络之前 ...
- linux常用网络命令ping和arping
linux常用网络命令ping和arping ping 向目标主机发送icmp请求包 常用来测试当前主机与目标主机网络连接状况 常见选项 -c 设置发包的个数 -s ...
- js将url转换二维码
二维码生成库 qrcode.js /*from tccdn minify at 2014-6-4 14:59:43,file:/cn/c/c/qrcode.js*/ /** * @fileovervi ...
- ssh -vT git@github.com get “ No such file or directory” 错误
在"Are you sure you want to continue connnecting"的时候回复y,不要打空格跳过 参考:http://stackoverflow.com ...
- 时间序列八: 以NASA之名: 卡尔曼滤波器
目录 以NASA之名: 卡尔曼滤波器 引言 荣耀骑士 卡尔曼滤波器* 参考文献: 以NASA之名: 卡尔曼滤波器 'That's one small step for man,one giant le ...
- [CodeForces - 447C] C - DZY Loves Sequences
C - DZY Loves Sequences DZY has a sequence a, consisting of n integers. We'll call a sequence ai, ai ...
- Python标准数据类型的二次加工
基于类继承的原理实现: class Li(list): #继承标准数据类型 list def app(self,p_object): #派生出新的 append功能 if not isinstance ...
- WebSphere安装教程(WAS6.1为例)
1.网络准备 我们选择图形界面安装,如果堡垒机是windows则要在目标机器安装桌面环境并开启vcnserver:如果堡垒机是Linux则在堡垒机安装桌面环境和vncserver,然后将目标机的DIS ...
- Mockito:一个强大的用于Java开发的模拟测试框架
https://blog.csdn.net/zhoudaxia/article/details/33056093 介绍 本文将介绍模拟测试框架Mockito的一些基础概念, 介绍该框架的优点,讲解应用 ...
- JAVA工程师面试常见问题集锦
集锦一: 一.面试题基础总结 1. JVM结构原理.GC工作机制详解 答:具体参照:JVM结构.GC工作机制详解 ,说到GC,记住两点:1.GC是负责回收所有无任何引用对象的内存空间. 注意: ...