一.基于api前端显示课程详细信息 1.调整Course.vue模块 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 <template>     <div&g…
三.xadmin后台管理 3.1.xadmin的安装 django2.0的安装(源码安装方式): https://github.com/sshwsfc/xadmin/tree/django2 把zip文件放到pip目录下,运行下面命令安装: pip install xadmin-django2 是文件README.rst 出现了 Unicode 解码错误,这个文件是没有什么用处的,可以新建一个同名的空白文件替换掉 首先下载zip源码包:github.com/sshwsfc/xadmin 解压后,…
五.完成注册.找回密码和激活验证码功能 5.1.用户注册 register.html拷贝到templates目录 (1)users/views.py class RegisterView(View): '''用户注册''' def get(self,request): return render(request,'register.html') (2)注册页面的url # MxOnline/urls.py from users.views import RegisterView path('re…
第三百九十八节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5系统环境设置 1.Linux安装配置 注意事项: 虚拟机网卡桥接模式 不要拨VPN 如果,网络怎么都不同,可以删除这个文件 /etc/udev/rules.d/70-persistent-net.rules ( 6.2版本和ubuntu 会有这个文件,这个文件是记录网口和 MAC地址关系的) su root 基本配置: ip [root@localhost ~]# cat /etc/sysconf…
第三百九十五节,Django+Xadmin打造上线标准的在线教育平台—Xadmin集成富文本框 首先安装DjangoUeditor3模块 Ueditor HTML编辑器是百度开源的HTML编辑器 下载地址 https://github.com/andyzsf/DjangoUeditor3 下载后解压下载包,找到DjangoUeditor3-master\DjangoUeditor文件夹  将DjangoUeditor文件夹,整个文件夹复制到Xadmin同级目录 安装好后在settings.py将…
第三百八十四节,Django+Xadmin打造上线标准的在线教育平台—路由映射与静态文件配置以及会员注册 基于类的路由映射 from django.conf.urls import url, include # 导入django自在的include逻辑 from django.contrib import admin from django.views.generic import TemplateView # 导入django自带的TemplateView逻辑 import xadmin #…
第三百七十九节,Django+Xadmin打造上线标准的在线教育平台—xadmin的安装 xadmin介绍 xadmin是基于Django的admin开发的更完善的后台管理系统,页面基于Bootstrap3开发的 xadmin安装 下载地址:https://github.com/sshwsfc/xadmin 下载后解压下载包,cd 进入解压目录执行命令,python setup.py install   安装 安装时会安装依赖包 安装django-import-export pip instal…
3-3 django orm介绍与model设计 上节教程完成后代码(来学习本节前置条件): 对应commit: 留言板前端页面展示.本次内容截止教程3-2结束. 可能现在你还在通过手写sql语句来操作数据库,当我们有了orm,数据库操作变得很简单.这一小节我们来学习Django中的orm. 原生sql 与 orm 没有orm 的情况下message/views.py代码: import MySQLdb # 使用原生sql获取书的列表 def book_list(request): # 创建到数…
3-2 配置表单页面 必要的该说的,该了解的 前置条件: 你已经学习了前面教程.将项目的文件夹目录结构,setting配置等修改完毕与我保持一致. 本节通过Django快速的配置一个留言板页面来学习 Django从请求到响应的整个完整流程.为我们开发在线教育平台打下基础.   mark 上图便是本节教程所要用到的静态页面: 前往Github下载:form.html 具体的业务:填写信息 -> 然后点击提交 ->数据被存储到数据库. 这个html是一个单文件,里面已经包含了css js内容. 将…
大家好,此教程为在慕学网的实战教程Python升级3.6 强力Django+杀手级Xadmin打造在线教育平台的学习笔记,不对望指正! 使用Django+Xadmin打造在线教育平台(Python2,3共用一份教程,未说明的都是相同操作,不同点我会专门指出.): 课程介绍 第一章:项目介绍和课程介绍 Django是一个Python中Web开发的主流框架,被许多大型公司使用,如Google,豆瓣,YouTube,知乎,instagram:   mark 创业公司喜欢的web框架.严格按照互联网公司…
七.授课机构功能 7.1.模板继承 (1)创建母板 把org-list.html拷贝到templates目录下,新建base.html,剪切org-list.html内容到里面 再修改一下静态文件的地址(css.就是.image和media) (2)机构首页路由 from organization.views import OrgView path('org_list/',OrgView.as_view(),name = 'org_list'), (3)机构views class OrgView…
九.课程章节信息 9.1.模板和urls 拷贝course-comments.html 和 course-video.html放入 templates目录下 先改course-video.html,同样继承base.html,然后里面有属于自己的样式,也要保留 (1)配置url和视图 # 课程章节信息页 re_path('info/(?P<course_id>\d+)/', CourseInfoView.as_view(), name="course_info"), cla…
十.授课教师 10.1.讲师列表页 拷贝teacher-list.html和teacher-detail.html到templates目录下 先改teacher-list.html,同样继承base.html (1)urls配置 organazition/urls.py # 讲师列表 re_path('teacher/list/', TeacherListView.as_view(), name="teacher_list"), (2)给Teacher Model添加一个年龄字段 te…
十一.用户信息 11.1.个人信息展示 (1)新建‘usercenter-bae.html’当母板 {% load staticfiles %} <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name="renderer" content="webkit"> <meta http-equiv="X-U…
十四.xadmin的进阶开发 14.1.权限管理 (1)用户权限 超级用户拥有所有权限,其它添加的用户默认没有任何权限 进后台添加一个用户“Editor1”,勾上“职员状态”后,这个用户才可以登录进后台,默认没添加权限的用户登录到后台的情况如下: 接下来,为用户Editor1添加查看课程和查看章节的权限 再刷新可以看到,有了查看课程和章节的权限了 (2)组的权限 添加一个组“编辑部门”,赋予如下权限 : 把刚才的用户“Editor1”加入到“编辑部门”这个组,然后看用户现在的权限如下: 组里面的…
目录 在线教育平台(一)      在线教育平台(二) 在线教育平台(三)      在线教育平台(四) 在线教育平台(五)      在线教育平台(六) 在线教育平台(七)      在线教育平台(八) 在线教育平台(九)      在线教育平台(十) 代码 github下载 十二.首页和全局404,500配置 12.1.首页功能 Course添加一个字段 is_banner = models.BooleanField('是否轮播',default=False) CourseOrg添加一个字段…
目录 在线教育平台(一)      在线教育平台(二) 在线教育平台(三)      在线教育平台(四) 在线教育平台(五)      在线教育平台(六) 在线教育平台(七)      在线教育平台(八) 在线教育平台(九)      在线教育平台(十) 代码 github下载 八.课程详情页功能的实现 8.1.课程列表 (1)配置urls MxOnline/urls中 path("course/", include('course.urls', namespace="cou…
目录 在线教育平台(一)      在线教育平台(二) 在线教育平台(三)      在线教育平台(四) 在线教育平台(五)      在线教育平台(六) 在线教育平台(七)      在线教育平台(八) 在线教育平台(九)      在线教育平台(十) 代码 github下载 在线演示 一.前言 开发环境: python:  3.6.4 Django: 2.0.2 后台管理:xadmin 1.1.项目介绍 系统概括: 系统具有完整的用户登录注册以及找回密码功能,拥有完整个人中心. 个人中心:…
第四百零二节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署,uwsgi安装和启动,nginx的安装与启动,uwsgi与nginx的配置文件+虚拟主机配置 软件版本  uwsgi-2.0.15nginx-1.12.1 1.用Navicat Premium远程登录Linux系统数据库,创建网站需要的数据库 2.数据库创建好后,将开发环境的数据库传输到刚才创建的数据库 传输数据 如果在传输数据时,怎么都传输不了,老报错误,有可能是传输数据太大,要在软件设置一下,改一个变量,将参数…
第四百零一节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署virtualenv虚拟环境安装,与Python虚拟环境批量安装模块 virtualenv简介 1.安装virtualenv [root@192 huan_jing]# pip3 install virtualenv Collecting virtualenv Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB) 100% |██████████████…
第四百节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装python3.5.1 1.检查系统是否安装了python [root@192 ~]# rpm -qa python python-2.6.6-51.el6.x86_64 [root@192 ~]# 可以看到CentOS6.5系统默认安装了python2.6.6 2.检查一下Python安装在什么地方 [root@192 ~]# whereis python python: /usr/bin/pyt…
第三百九十九节,Django+Xadmin打造上线标准的在线教育平台—生产环境部署CentOS6.5安装mysql5.6 1.检测系统是否已经安装过mysql或其依赖,若已装过要先将其删除,否则第4步使用yum安装时会报错: [root@192 ~]# yum list installed | grep mysql mysql-libs.x86_64 5.1.71-1.el6 @anaconda-CentOS-201311272149.x86_64/6.5 [root@192 ~]# 2.删除已…
第三百九十七节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,主题本地化设置 主题设置是在xadmin\plugins\themes.py这个文件 默认xadmin是通过下面这个json文件来动态加载的.所以我们可以到它加载的json文件里下载好主题 themes.py修改方式 #coding:utf-8 from __future__ import print_function import httplib2 from django.template import lo…
第三百九十六节,Django+Xadmin打造上线标准的在线教育平台—其他插件使用说,自定义列表页上传插件 设置后台列表页面字段统计 在当前APP里的adminx.py文件里的数据表管理器里设置 aggregate_fields = {'字段名称':'sum为统计数,min为统计时间'} class CourseAdmin(object): # 自定义数据表管理器类 # 设置xadmin后台显示字段 list_display = ['name', 'desc', 'detail', 'degre…
第三百九十四节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置2,以及目录结构说明 设置后台列表页面可以直接修改字段内容 在当前APP里的adminx.py文件里的数据表管理器里设置 list_editable = ['可以修改的字段','可以修改的字段'] class UsersAdmin(object): # 自定义用户信息数据表管理器类 # 设置xadmin后台显示字段 list_display = ['username', 'password', 'n…
第三百九十三节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置 设置后台某个字段的排序规则 在当前APP里的adminx.py文件里的数据表管理器里设置 ordering = ['-要排序的字段名称']-为倒序排序 #!/usr/bin/env python # -*- coding:utf8 -*- import xadmin from xadmin import views # 导入xadmin的views from .models import User…
第三百九十二节,Django+Xadmin打造上线标准的在线教育平台—sql注入攻击,xss攻击,csrf攻击 sql注入攻击 也就是黑客通过表单提交的地方,在表单里输入了sql语句,就是通过SQL语句绕开程序判断,获取到数据库的内容 所以需要对用户输入的内容进行判断合法性,Django的orm对sql注入进行了处理 xss攻击 就是黑客通过,构造网站的动态url传参在URL传入js代码,获取到用户的cookie,在根据cookie来冒充用户做用户行为,所以尽量用post来提交信息,如果有动态g…
第三百九十一节,Django+Xadmin打造上线标准的在线教育平台—404,403,500页面配置 路由映射在全局也就是根目录里的urls.py里配置404路由映射 注意:不是写在urlpatterns列表里,而是独立写 handler404 = '404逻辑函数'函数需要从app路径开始 # 全局404页面配置 handler404 = 'app_users.views.pzhi404' 逻辑函数 可以写在任意一个app的views.py文件里 render_to_response('设置要…
第三百九十节,Django+Xadmin打造上线标准的在线教育平台—Django+cropper插件头像裁剪上传 实现原理 前台用cropper插件,将用户上传头像时裁剪图片的坐标和图片,传到逻辑处理函数里,在逻辑处理函数里接收原始图片进行保存,然后接收用户的裁剪坐标,利用python的Pillow模块图像处理模块里的PIL(图像库),将原始图片根据用户裁剪坐标进行裁剪 有两个重点:第一要准备好cropper头像裁剪插件,第二python环境要安装好Pillow模块 htnl页面 编写htnl页…
第三百八十九节,Django+Xadmin打造上线标准的在线教育平台—列表筛选结合分页 根据用户的筛选条件来结合分页 实现原理就是,当用户点击一个筛选条件时,通过get请求方式传参将筛选的id或者值,传入逻辑处理就行数据库条件查询,将查询条件值在返回html页面判断是否是选中样式,最后将所有需要关联的筛选请求加上彼此逻辑处理传回来的查询条件值 html请求传参 黄色背景为请求传参 红色背景为逻辑处理传过来的查询条件判断样式 <div class="wp butler_list_box li…