4-1 使用py3.6和django1.11开发系统前注意事项

直接通过Python3.6和django最新版本来开发我们的系统的一些注意事项。

原版本: Python 2.7 & django 1.9.8
现在版本:Python 3.6 & django 1.11

直接从3.6上手,开始工作,而不用做完2.7再转换。

代码几乎100%兼容2.7 & 3.6

虚拟环境问题

Python2.7 与 Python3.x共存并创建虚拟环境。

mkvirtualenv -p C:\...\python.exe mxonline

设计model的时候的__unicode__方法

Python2.7 中:

def __unicode__:
return self.name

Python 3.x中:

def __str__(self):
return self.name

3.x下重载Unicode不会报错,但是会在后台显示有问题。

安装Python的mysql驱动时不能用之前的 MYSQL python

这个网址是windows下python包安装的居家必备良品,建议收藏。

https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python

应该改用Mysqlclient来替换我们的MySQl-python

接口是一样的。所以以后建议直接用Mysqlclient,因为它2, 3版本都有。

通过源码方式安装xadmin时。

Github 搜索 mxonline_resources,将里面的Xadmin放进extras_apps中。
就不用官方的了。

也可以直接使用官方的新版,已经支持了Python3.6

Xadmin安装一定要安装依赖包

django-crispy-forms~=1.6.0
django-import-export>=0.5.1
django-reversion~=2.0.0
django-formtools
future==0.15.2
httplib2==0.9.2
six==1.10.0

使用DjangoUeditor

官方的不支持Python3, 去mxonline_resource目录下载兼容Python3的版本。
放入extras_apps

4-2 django-app 设计

数据库设计

根据app设计 models

数据表生成与修改

授课机构提供讲师录制课程,学员完成在线学习。

  • 全局头部:用户消息 & 个人中心: 没有登录时,就是登录注册
  • 对于公开课,授课讲师,授课机构进行搜索。
  • 轮播图,课程,机构,页脚
  • 公开课:分页公开课,右边热门推荐。
  • 点进课程:课程详情页。详情: 后台富文本。右边是课程机构的介绍。收藏 或学习
  • 章节信息 & 课程资源下载 & 评论
  • 授课讲师: 授课讲师列表页, 讲师排行榜。分页。
  • 点进讲师: 看到课程。
  • 授课机构: 类别筛选,机构性质,所在地区 & 排序。用户提交表单,我要学习, 机构排名.
  • 个人中心: 修改密码, 修改头像, 个人信息, 我的课程, 我的收藏, 我的消息。

app大致会有用户模块,课程模块,授课教师授课机构

 
mark

多一个operation app 是因为数据库的需要。后面会讲。

原文学习来自简书,作者:天涯明月笙
原文链接:https://www.jianshu.com/p/17c7cb4eeca1

django+xadmin在线教育平台(六)的更多相关文章

  1. django+xadmin在线教育平台(一)

    大家好,此教程为在慕学网的实战教程Python升级3.6 强力Django+杀手级Xadmin打造在线教育平台的学习笔记,不对望指正! 使用Django+Xadmin打造在线教育平台(Python2, ...

  2. django+xadmin在线教育平台(五)

    3-3 django orm介绍与model设计 上节教程完成后代码(来学习本节前置条件): 对应commit: 留言板前端页面展示.本次内容截止教程3-2结束. 可能现在你还在通过手写sql语句来操 ...

  3. django+xadmin在线教育平台(四)

    3-2 配置表单页面 必要的该说的,该了解的 前置条件: 你已经学习了前面教程.将项目的文件夹目录结构,setting配置等修改完毕与我保持一致. 本节通过Django快速的配置一个留言板页面来学习 ...

  4. django+xadmin在线教育平台(十)

    剩余app model注册 courses注册 新建courses/adminx.py: # encoding: utf-8 __author__ = 'mtianyan' __date__ = '2 ...

  5. django+xadmin在线教育平台(十六)

    7-7 modelform 提交我要学习咨询1 对应表userask form会对字段先做验证,然后保存到数据库中. 可以看到我们的forms和我们的model中有很多内容是一样的.我们如何让代码重复 ...

  6. django+xadmin在线教育平台(十七)

    8-1 课程列表 拷贝课程列表页到template目录 创建课程相关的urls.py Mxonline2/urls.py中声明包含到course的url中: # 课程app的url配置 url(r&q ...

  7. django+xadmin在线教育平台(十五)

    7-4 课程机构列表页数据展示2 前去html中进行数据填充   mark 可以看到所有城市是通过a标签,当前选中城市为active.   mark 之后把下面的写死的城市删除掉.   mark 这时 ...

  8. django+xadmin在线教育平台(十四)

    7-1 django templates模板继承1 机构可以筛选类别 机构可以根据所在地区进行分类 右侧我要学习功能: form表单提交 右下:授课机构排名 页面头部与底部为全局头和全局底部. Dja ...

  9. django+xadmin在线教育平台(十一)

    6-1 首页和登录页面的配置 用户访问我们的根目录,我们需要把html文件返回给用户.因此我们第一步把html文件放入template目录.   mark 在html中找到首页的html.拷贝到我们的 ...

随机推荐

  1. 安装mongodb并配置

    下载网址http://dl.mongodb.org/dl/win32/x86_64 mongodb-win32-x86_64-2008plus-ssl-v3.4-latest.zip 解压d盘命名mo ...

  2. C# 或与非

    或    ||与    &&非    ! 逻辑或  | 逻辑与  & 逻辑非  ~

  3. Nodejs mysql pool使用实例

    前段时间在写一个版本发布工具,用到express+mysql实现,当站点运行很长一段空白时间后,node进程会自动down掉,提示mysql连接错误,谷歌后发现是mysql自身的特性导致,因此后来改为 ...

  4. 经典PHP笔试题

    1.考虑如下脚本.标记处应该添加什么代码才能让脚本输出字符串php? $alpha = 'abcdefghijklmnopqrstuvwxyz'; $letters = array(15, 7, 15 ...

  5. xenserver 更新源

    在xenserver上安装vnc软件时,报错 [root@cloud yum-3.4.3]# ./yummain.py install yumThere are no enabled repos.Ru ...

  6. c# 类成员的定义 定义方法、字段和属性【转】

    c# 类成员的定义 定义方法.字段和属性c#类的成员包括字段.属性和方法.所有成员都有自己的访问级别,用下面的关键字之一来定义:public----成员可以有任何代码访问:private----成员只 ...

  7. DataBinding初探 数据绑定的用法 ,import 集合类型,绑定的表达式,访问集合类型2

    数据绑定的用法 import语法   <data> <import type="android.view.view"/> </data>   如 ...

  8. 创建有输出参数的存储过程并在c#中实现DataGridView分页功能

    不足之处,欢迎指正! 创建有输出参数的存储过程 if exists(select * from sysobjects where name='usp_getPage1') drop procedure ...

  9. mybatis-plus 异常 Invalid bound statement (not found)

    最近吧项目中添加使用了mybatis-plus,发现操作sql的时候出现异常: Invalid bound statement (not found) ,异常位置位于mybatis-plus的jar中 ...

  10. a标签嵌套a标签效果的两种解决方案

    <!-- a标签进行嵌套的时候 --> <a href="#outer">outerA <a href="#inner">i ...