路飞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数据层)最新版本开源了
前言: 不要问我框架为什么从收费授权转到免费开源,人生没有那么多为什么,这些年我开源的东西并不少,虽然这个是最核心的,看淡了就也没什么了. 群里的网友:太平说: 记得一年前你开源另一个项目的时候我就说 ...
随机推荐
- Webdriver+Testng实现测试用例失败自动截图功能
testng执行测试用例的时候,如果用例执行失败会自动截图,方便后续排查问题 1.首先定义一个截图类: package com.rrx.utils; import java.io.File;impor ...
- CSS ——padding
css样式中使用padding(内边距)会将盒子撑开? 解决办法:在样式中添加box-sizing:border-box;
- C#;DataTable添加列;DataTable转List泛型集合;List泛型集合转DataTable泛型集合;
给DataTable添加列 string sql = "select * from cgpmb order by code"; DataTable dt = Bobole.Data ...
- react基础学习 三
获取原生的DOM 注意:获取DOM是要在组件渲染之后才能被获取,所以在constructor里面获取不到原生的DOM 方法一:回调函数 推荐 方法二:createRef() 16版本,推荐 方 ...
- 提取和匹配线特征的一个demo
一.代码来源: https://github.com/drozdvadym/opencv_line_descriptor 二.依赖包:OpenCV 2.4.9 三.Matching的运行结果截图: 四 ...
- scrapy-middlewares
1.scrapy中间件 下载中间件Downloader Middlewares 下载器中间件处理请求与响应,对应两个方法 process_request(self, request, spider) ...
- sublime text3 离线安装插件方法 package control
package control 在线安装 一般会出现各种错误 不推荐 离线安装 推荐step1: 打开package control官网https://packagecontrol.io/ step2 ...
- git版本冲突解决
1. 使用git log命令查看所有的历史版本,获取某个历史版本的id,假设查到历史版本的id是139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96. git log 2. ...
- Django上传文件和上传图片(不刷新页面)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- pyqt5-数据库加载错误解决
1.无法连接postgresql 直接在pycharm上安装pyqt5没有QT这个文件夹, 在ancanda中装好使用. 切换加载环境,或者将第二个ptqt5拷贝替换第一个环境中的pyqt5