日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

最新Django2.0.1在线教育零基础到上线教程(九)

發布時間:2023/12/10 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最新Django2.0.1在线教育零基础到上线教程(九) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

演示地址: http://mxonline.mtianyan.cn

教程倉庫地址1: https://github.com/mtianyan/DjangoGetStarted
教程倉庫地址2: https://github.com/mtianyan/Mxonline2
教程倉庫地址3: https://github.com/mtianyan/Mxonline3

9-1 講師列表頁

teacherlist 和 teacher detail 一起放到template目錄之下

繼承base頁面

mark

書寫view與配置url

# 講師列表path('teacher_list/', TeacherListView.as_view(), name="teacher_list"),

添加講師的年齡字段

age = models.IntegerField(default=18, verbose_name=u"年齡")

分頁仿照orglist 注意object_list

view

# 課程講師列表頁 class TeacherListView(View):def get(self, request):all_teacher = Teacher.objects.all()# 總共有多少老師使用count進行統計teacher_nums = all_teacher.count()# 對講師進行分頁# 嘗試獲取前臺get請求傳遞過來的page參數# 如果是不合法的配置參數默認返回第一頁try:page = request.GET.get('page', 1)except PageNotAnInteger:page = 1# 這里指從allorg中取五個出來,每頁顯示5個p = Paginator(all_teacher, 4, request=request)teachers = p.page(page)return render(request, "teachers-list.html", {"all_teacher":teachers,"teacher_nums":teacher_nums})

排序 & 講師排行榜

sort = request.GET.get("sort", "")if sort:if sort == "hot":all_teacher = all_teacher.order_by("-click_nums") "sort":sort

將sort return到前端。實現active

排行榜講師

# 排行榜講師rank_teacher = Teacher.objects.all().order_by("-fav_nums")[:5] mark

forloop.count 取出當前是第幾次循環

9-2 講師詳情頁

mark

配置url和view

列表頁中配置入口

# 教師詳情頁面class TeacherDetailView(View):def get(self, request, teacher_id):teacher = Teacher.objects.get(id = int(teacher_id))all_course = teacher.course_set.all()# 排行榜講師rank_teacher = Teacher.objects.all().order_by("-fav_nums")[:5]has_fav_teacher = Falseif UserFavorite.objects.filter(user=request.user, fav_type=3, fav_id= teacher.id):has_fav_teacher = Truehas_fav_org = Falseif UserFavorite.objects.filter(user=request.user, fav_type=2, fav_id= teacher.org.id):has_fav_org = Truereturn render(request, "teacher-detail.html", {"teacher":teacher,"all_course":all_course,"rank_teacher":rank_teacher,"has_fav_teacher":has_fav_teacher,"has_fav_org":has_fav_org,}) # 訪問機構講師re_path('teacher/detail/(?P<teacher_id>\d+)/', TeacherDetailView.as_view(), name="teacher_detail"),

第九章完結

總結

以上是生活随笔為你收集整理的最新Django2.0.1在线教育零基础到上线教程(九)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。