零基础使用Django2.0.1打造在线教育网站

零基础使用Django2.0.1打造在线教育网站(六):教育网站

2018-07-25  本文已影响79人  啃饼小白

写在前面

小伙伴们,今天终于进入了我们在线教育网站的项目开发阶段,这是这个项目的第一篇,主要给大家创建我们的虚拟环境和相关软件的安装(可能部分软件的安装在前面已经介绍了,这里就不再赘述了,必要的时候会开启传送大门。)

本篇笔记对应于第六篇代码,对应于github的位置是https://github.com/licheetools/eduline

虚拟环境配置

首先请大家回顾阅读一下我们之前写的第二篇:零基础使用Django2.0.1打造在线教育网站(二):开发环境配置,然后我会给大家演示这个项目的虚拟环境配置,作用就是加深大家对虚拟环境搭建的印象。

1、创建虚拟环境eduline(名字可以随意取)

C:\Users\YC>F:  # 进入F盘

F:\>cd Envs  # 进入到Envs这个文件夹(系统默认在C盘,我自定义在F盘)

F:\Envs>mkvirtualenv eduline   # 创建虚拟环境eduline
Using base prefix 'f:\\python\\pystall'
New python executable in F:\Envs\eduline\Scripts\python.exe
Installing setuptools, pip, wheel...done.

(eduline) F:\Envs>   # 表示已经进入到eduline这个虚拟环境中

2、安装Django2.0.1

(eduline) F:\Envs>pip install django==2.0.1 -i https://pypi.tuna.tsinghua.edu.cn/simple     # 采用清华镜像源安装django

Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting django==2.0.1
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/21/2a/3a0ec97b18d6e8d295142228f03604ac78ea6de05cf9bc3773a74f0b58bb/Django-2.0.1-py3-none-any.whl (7.1MB)
    100% |████████████████████████████████| 7.1MB 2.9MB/s
Collecting pytz (from django==2.0.1)
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/30/4e/27c34b62430286c6d59177a0842ed90dc789ce5d1ed740887653b898779a/pytz-2018.5-py2.py3-none-any.whl (510kB)
    100% |████████████████████████████████| 512kB 1.5MB/s
Installing collected packages: pytz, django
Successfully installed django-2.0.1 pytz-2018.5     # 提示已经安装成功了,新版本会自动安装pytz这个库

(eduline) F:\Envs>     # 然后就可以开始pip安装库和包了

3、创建我们的django项目

打开Pycharm,新建django项目,各步骤如下:



至于各个箭头所填内容的原因,我这里就不再说明了,如果忘记了可以翻看之前的第二篇笔记。最后点击确定按钮即可,进入到如下页面:
至此,虚拟环境以及项目的搭建就完成了。

mysqlclient的安装

正如你前面所看到的,因为我们后面需要连接数据库,所以数据库驱动mysqlclient的安装是必不可少的,这里就先安装一下。(零基础使用Django2.0.1打造在线教育网站(四):简易留言簿基础开发,前面已经介绍过了,所以这里简单演示一下即可)
这里就采用网上下载到本地的方式来安装一下:
1、点击下面的蓝色字,即可跳转到下载地址:
https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python,点击这个网站,然后按住Ctrl+F键,调出搜索框,在里面输入mysqlclient,然后回车即可,因为我的电脑是64位,所以下载64位的。


上面的cp36代表Python3.6的版本,cp37代表Python3.7 的版本!
2、将下载好的mysqlclient放置到虚拟环境eduline里面:

3、在虚拟环境中安装mysqlclient,如图所示:

C:\Users\YC>F:

F:\>cd Envs    

F:\Envs>workon eduline
(eduline) F:\Envs>cd eduline    # 必须进入到你的项目中才能开始安装,否则会出错

(eduline) F:\Envs\eduline>pip install mysqlclient-1.3.13-cp36-cp36m-win_amd64.whl
Processing f:\envs\eduline\mysqlclient-1.3.13-cp36-cp36m-win_amd64.whl
Installing collected packages: mysqlclient
Successfully installed mysqlclient-1.3.13

(eduline) F:\Envs\eduline>

4、配置settings.py文件
打开eduline/eduline/settings.py文件,找到第77行代码:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}

修改为如下代码:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'eduline',
        'USER': 'root',
        'PASSWORD': 'root',  # 密码可以随意设置,我使用root
        'HOST':'127.0.0.1'
    }
}

5、新建数据库eduline
打开Navicat,新建数据库eduline:


然后点击Tools 菜单下 Run manage.py Task,运行我们的makemigrationsmigrate命令,最后运行一下我们的项目:runserver,在浏览器地址栏中输入:http://127.0.0.1:8000/或者(http://127.0.0.1)出现:
表明我们的项目初始搭建完成了。

Xadmin的安装

尽管Django自带了admin用于后台的管理,但是我们觉得它的可支配性不是很大,所以这里推荐采用Xadmin来对后台进行管理。(还有一个叫做django-suit的插件,它其实只是美化了admin,功能上并没有做过多的拓展,这里开启传送大门,有兴趣的可以了解一下:django-suit官网
大家可以点击这里下载xadmin下载后的文件放置位置,后面会介绍,这里你先新建一个文件夹A临时存放一下!

DjangoUeditor的安装

因为后面课程的添加需要富文本的支持,所以需要用到富文本插件,这里依旧开启传送大门:大家可以点击这里下载DjangoUeditor下载后的文件放置位置,后面会介绍,这里你先临时存放在文件夹A一下!

课程的前端初始代码

因为我们这里主要说的是前端,所以这个在线教育网站的前端页面源代码就直接给大家了,大家自行下载,开启传送大门:初始前端源码.rar下载后的文件放置位置,后面会介绍,这里你先临时存放在文件夹A一下!

至此,项目开发所需要的额外软件算是准备完全了,接下来则是业务逻辑分析了。

业务逻辑分析

其实在第一篇的时候我们就已经介绍完了这个网站的业务逻辑,但是鉴于时间的原因,我这里再次介绍一下,其目的就是让大家更加的熟悉我们的业务逻辑,为接下来数据库的设计做一个铺垫。

点击个人中心: 你可以修改头像,密码,邮箱,可以看到我的课程以及我的收藏。还可以删除我的收藏,消息。

点击导航栏: 你可以看到公开课,授课讲师,授课机构和全局搜索。

点击公开课:你可以看到课程列表,排序-搜索。热门课程推荐和课程的分页。

点击课程:你可以在课程详情页中对课程进行收藏和取消收藏。同时可以采用富文本对课程内容进行展示。

点击开始学习:你可以看到课程的章节信息和评论信息以及课程资源的下载链接。

点击授课讲师:你可以看到授课讲师的列表页,可以对讲师进行人气排序以及分页,右侧还有讲师排行榜。

点击讲师的详情页面:你可以对讲师进行收藏和分享,以及看到该讲师的全部课程。

点击导航栏: 你可以看到授课机构,它有分页,排序和筛选功能。

机构列表页右侧有快速提交我要学习的表单,之后你便可以开始学习了。

点击机构:它的左侧会呈现:机构首页,机构课程,机构介绍,机构讲师这四部分。

后台管理系统可以切换主题。左侧每一个功能都有列表显示,具有增删改查,筛选功能。

课程列表页可以对不同字段进行排序。你可以选择多条记录进行删除操作。

课程列表页:点击过滤器,选择字段范围开始搜索,结果可以导出csv,xml,json等格式文本。

你可以在课程新增页面上传图片,和进行富文本的编辑,时间选择,添加章节,添加课程资源等。

日志记录:它可以记录后台人员的操作情况。

其他的大家可以在后期的学习过程中慢慢体会,这里就不一一而足了。

所以我们的app一共有4个,用于分别实现不同的功能,具体如下:

(users)用户版块:负责记录用户的个人信息,轮播图等相关内容,


(course)课程版块:用于记录课程相关的内容,


(organization)授课教师与授课机构板块:用于记录授课讲师,机构相关内容,


(operation)用户操作板块:用于记录用户操作的相关内容。


关于这4个app项目的创建和数据库字段的定义,我们下一篇笔记再介绍。接下来我们介绍如何利用Pycharm来同步更新代码至github,前面那篇介绍了如何利用Pycharm来新建repositories 并把代码上传过去,这次就是介绍如何更新之前上传的代码了。

利用Pycharm来同步更新代码至github

其实很简单的,分2个步骤。
1、点击菜单栏下的VCS,下拉找到第三个Commit,点击一下,就会出现下面的页面:


选择完以后,点击下面的commit按钮,至此第一步就完成了,接下来第二步。
2、还是点击菜单栏下的VCS,下拉找到第八个Git,点击一下,下拉找到那个倒数第四个Push按钮,点击一下,就会出现如下页面:
如果你第一步Commit的话,这里就有你上传的Commit信息,我这第一步因为没有提交所以就没有了。然后选择你的提交项目,点击下面的Push按钮,等待几分钟,去你的Github仓库看一下,发现出现了:
那么恭喜你,你已经Get了这个技能。

至此本篇关于‘’教育网站开发配置‘’的笔记就到此为止了,下一篇就开始4个app项目的创建和数据库字段的定义的介绍了,感谢你的赏阅。

本篇笔记对应于第六篇代码,对应于github的位置是https://github.com/licheetools/eduline

上一篇 下一篇

猜你喜欢

热点阅读