路飞ORM练习
# a.查看所有学位课并打印学位课名称以及授课老师
# degree_list = DegreeCourse.objects.all().values('name', 'teachers__name')
# queryset = DegreeCourse.objects.all()
# for row in queryset:
# row.name,row.teachers.all() # b.查看所有学位课并打印学位课名称以及学位课的奖学金
# c_obj=DegreeCourse.objects.all()
# for i in c_obj:
# print(i.name)
# print(i.degreecourse_price_policy.all().values('price')) # degree_list = DegreeCourse.objects.all()
# for row in degree_list:
# print(row.name)
# scholarships = row.scholarship_set.all()
# for item in scholarships:
# print('------>',item.time_percent,item.value) # c. 展示所有的专题课
# c_obj=Course.objects.filter(degree_course__isnull=True)
# print(c_obj)
# d. 查看id=1的学位课对应的所有模块名称 # a_obj=DegreeCourse.objects.filter(id=1).values('course__name')
# print(a_obj) # obj = DegreeCourse.objects.get(id=1)
# course_list = obj.course_set.all()
# print(course_list)
#
# course_list = Course.objects.filter(degree_course_id=1)
# print(course_list)
# # e.获取id = 1的专题课,并打印:课程名、级别(中文)、why_study、what_to_study_brief、所有recommend_courses
# c_obj =Course.objects.filter(id=1)
# print(c_obj.values('name'))
# print(c_obj.first().get_level_display())
# print(c_obj.values('coursedetail__why_study'))
# print(c_obj.values('coursedetail__what_to_study_brief'))
# print(c_obj.values('coursedetail__recommend_courses')) # obj = Course.objects.get(id=1)
# print(obj.name)
# print(obj.brief)
# print(obj.get_level_display() )
# print(obj.coursedetail.hours )
# print(obj.coursedetail.why_study )
# print(obj.coursedetail.recommend_courses.all() ) # f.获取id = 1的专题课,并打印该课程相关的所有常见问题
# c_obj = Course.objects.filter(id=1).first()
# print(c_obj.asked_question.all().values('question')) # obj = Course.objects.get(id=1)
# ask_list = obj.asked_question.all()
# for item in ask_list:
# print(item.question,item.answer) # g.获取id = 1的专题课,并打印该课程相关的课程大纲
# c_obj = Course.objects.filter(id=1)
# print(c_obj.values('coursedetail__courseoutline__title')) # obj = Course.objects.get(id=1)
# outline_list = obj.coursedetail.courseoutline_set.all()
# for item in outline_list:
# print(item.title,item.content)
# # h.获取id = 1的专题课,并打印该课程相关的所有章节
# c_obj = Course.objects.filter(id=1)
# print(c_obj.values('coursechapters__name')) # obj = Course.objects.get(id=1)
# chapter_list = obj.xxxxx.all() # 默认obj.表名_set.all()
# for item in chapter_list:
# print(item.name) # i.获取id = 1的专题课,并打印该课程相关的所有课时
# 第1章·Python 介绍、基础语法、流程控制
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 第1章·Python介绍、基础语法、流程控制
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# 01 - 课程介绍(一)
# c_obj = Course.objects.filter(id=1)
# for i in c_obj.values('coursechapters__chapter','coursechapters__name'):
# print(i.get('coursechapters__chapter'),i.get('coursechapters__name'))
# a_obj=CourseChapter.objects.filter(name=i.get('coursechapters__name'))
# for j in a_obj.values('coursesections__name'):
# print(j.get('coursesections__name')) # obj = Course.objects.get(id=1)
# chapter_list = obj.xxxxx.all()
# for chapter in chapter_list:
# print(chapter.name,chapter.coursesections.all()) # 补充
# section_list = CourseSection.objects.filter(chapter__course_id=1).values('id','name','chapter_id','chapter__name')
# for item in section_list:
# print(item) """
[
{'chapter_id':1,'chapter__name':'美丽俏佳人','children':[ {'id':1, 'name':'课时1'}, {'id':1, 'name':'课时2'} ]},
{'chapter_id':2,'chapter__name':'美丽俏佳狗','children':[]}
]
""" # i.获取id = 1的专题课,并打印该课程相关的所有的价格策略
# c_obj = Course.objects.filter(id=1).first()
# print(c_obj.price_policy.all())
路飞ORM练习的更多相关文章
- python 全栈开发,Day105(路飞其他数据库表结构,立即结算需求)
考试第三部分:Django 16. 列列举你熟悉的Http协议头以及作用.(1分) Accept-Charset: 用于告诉浏览器,客户机采用的编码 Host: 客户机通过这个头告诉服务器,想访问的 ...
- python 全栈开发,Day98(路飞学城背景,django ContentType组件,表结构讲解)
昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery ...
- python 全栈开发,Day70(模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介)
昨日内容回顾 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 Quer ...
- cookie session ORM 操作
. ORM增删改查操作 http://www.cnblogs.com/liwenzhou/p/8660826.html . 单表增删改查 . 单表的双下划线操作 . 外键的跨表查询 . 正向查询 . ...
- 9.13Django ORM那些事
2018-9-13 14:23:22 ORM那些事 参考 : https://www.cnblogs.com/liwenzhou/p/8660826.html 今天的都是ORM的查询 更详细进阶了! ...
- Django基础(2)--模板自定义标签和过滤器,模板继承 (extend),Django的模型层-ORM简介
没整理完 昨日回顾: 视图函数: request对象 request.path 请求路径 request.GET GET请求数据 QueryDict {} request.POST POST请求数据 ...
- ORM表之间高级设计
ORM表之间高级设计 一.表的继承 # db_test1 # 一.基表 # Model类的内部配置Meta类要设置abstract=True, # 这样的Model类就是用来作为基表 # 多表:Boo ...
- django框架基础-ORM进阶-长期维护
############### ORM进阶---contenttype ################ 设计思路: """ 路飞有两种课,专题课和学位课, ...
- 终于等到你:CYQ.Data V5系列 (ORM数据层)最新版本开源了
前言: 不要问我框架为什么从收费授权转到免费开源,人生没有那么多为什么,这些年我开源的东西并不少,虽然这个是最核心的,看淡了就也没什么了. 群里的网友:太平说: 记得一年前你开源另一个项目的时候我就说 ...
随机推荐
- linux centos 中访问linux 共享文件方法
mount -t cifs -o username="administrator",password="" //192.168.1.101/cp /mnt/nt ...
- Webdriver+Testng实现测试用例失败自动截图功能
testng执行测试用例的时候,如果用例执行失败会自动截图,方便后续排查问题 1.首先定义一个截图类: package com.rrx.utils; import java.io.File;impor ...
- 使用jieba库与wordcloud库第三方库进行词频统计
一.jieba库与wordcloud库的使用 1.jieba库与wordcloud库的介绍 jieba 库的分词原理是利用一个中文词库,将待分词的内容与分词词库进行比对,通过图结构和动态规划方法找到最 ...
- Opencv与Qt (一)之运行测试读取图片
刚刚在vs上装好了QT和Opencv,试一下效果把. 我简单的创建了一个label,然后使用Opencv导入图像,因为Opencv导入图像是MAT格式的,在使用Qt的时候我们要把导入的图像转换成Qim ...
- (21/24) webpack实战技巧:webpack对三方类库的优化操作
1.优化第一步--选用引入方式 在前面的学习中我们对于如何引入第三方类库(Jquery)推荐了两种方式,第一种是import引入的方式,第二种是ProvidePlugin插件.那两种引入方法有什么区别 ...
- sbt 学习
一.基础 1.工程根目录 包含build.sbt的目录是工程的根目录.注意,就算在一个空目录下面执行sbt about,也会生成project文件夹 2.源文件目录结构 SBT有固定的文件组织结构 s ...
- 拾遗----javascript一些实用方法
1. join() join() 方法用于把数组中的所有元素放入一个字符串.元素是通过指定的分隔符进行分隔的. var ids = []; for(var i = 0 ...
- Cordova开发App使用USB进行真机调试
在使用cordova开发app时,不像浏览器中可以直接使用浏览器的开发者工具进行调试.为了看到app的显示效果, 一种是使用模拟器进行展示,一种是使用真机进行展示. 模拟器:可以使用Android s ...
- django restfulwork 源码剖析
概要: 1.restful 规范(建议); 2. django rest framework框架 内容回顾: 1.开发模式; - 普通开发模式(前后端放在一起写) - 前后端分离 好处: 后端一套,前 ...
- 第三篇 Flask 中的 request
第三篇 Flask 中的 request 每个框架中都有处理请求的机制(request),但是每个框架的处理方式和机制是不同的 为了了解Flask的request中都有什么东西,首先我们要写一个前 ...