Django框架使用流程(三)
作者:互联网
开发流程的学习,用于快速熟悉Django框架各个模块
一、数据测试
Django自带了ORM模块,我们只需要熟悉常用的ORM操作即可通过面向对象的形式来完成原有SQL语句才能做到的增删改查。
在尚未启动服务器时,使用shell命令是操作数据库非常方便的测试环境
在manage.py 同级目录下进入python shell,进行简单的模型API练习
python manage.py shell
二、基本对象数据测试
引入需要的包:
from booktest.models import Book,Hero
1,查询所有图书信息:
Book.objects.all()
django模型类自带管理器objects 可以直接调用响应的方法
2,新建图书信息:
b = Book()
b.title=“射雕英雄传”
b.save()
当调用save方法是 会将数据存储进入数据库
4,修改图书信息:
b.price=3.5
b.save()
当调用save方法是相当于执行了update方法
5,删除图书信息:
b.delete()
执行delete时将数据苦衷对应的数据删除
三、关联对象的操作
当相关对象存在一对一、一对多、多对多关系时可以使用关联查询,此处仅以一对多举例,后续课程中会有多对多,一对一关系。
1、创建关联对象
h=Hero()
h.name=‘郭靖’
h.content=‘降龙十八掌’
h.book=b
h.save()
book字段为Hero表中的外键,此处必须按照外键相关约束赋值
2、一对多关系中通过多方找一方,此处案例为通过英雄找书
h.book.name
因为关系字段就存储在多方,可通过多方中的关键字段找一方
3、一对多关系中通过一方找多方,此处案例为通过书找到其中的所有英雄
b.hero_set.all()
一方对象.小写多方类名.all()
4、如果在定义外键是使用了字段related_name
则可以直接使用其值替换hero_set如
book = models.ForeignKey(Book,on_delete=models.CASCADE,related_name=‘heros’)
查询是就可以使用
b.heros.all()
ORM提供了非常多的面向对象语句,此处仅列举最广泛使用的,后续课程中会应用到更多的ORM语句
标签:name,框架,流程,ORM,Django,Book,多方,save,book 来源: https://blog.csdn.net/zhangzhaoyuxunlei/article/details/104729478