在线教育平台项目——整体架构

发布时间:2024-12-26 03:58

'FutureLearn' 英国在线教育平台,提供短期课程和学位项目。 #生活技巧# #工作学习技巧# #在线教育平台推荐#

Hello,我是 Alex 007,一个热爱计算机编程和硬件设计的小白,为啥是007呢?因为叫 Alex 的人太多了,再加上每天007的生活,Alex 007就诞生了。

有一段时间没好好写文章了,可不是出去浪了,而是要做一个在线教育平台的项目,模仿着路飞学城,结果正好还赶上学校有一些课程要结课,忙里忙外的,今天也得交了,虽然不是很完善。
在这里插入图片描述

内容比较多,分了三篇文章才介绍完:
需求分析
设计 & 接口定义
整体架构

后记

写这篇博客的时候,这个项目已经到时间马上要交了,虽然还有很多不完善的地方,但也没办法了,总结一下整个项目吧。

整体来说,前端基本上都是用Vue写的,都是些基本操作,一些功能用到了Element。

对于Vue还不是很熟悉,因此在Vue中还引入了jQuery和Boostrap,在这一步有些麻烦,安装+导入的,看了好多教程,有很多都不靠谱,走了很多弯路,可惜具体看过那些文章有些记不清么,后续再总结吧。

总结起来呢,前端貌似并没有用到什么比较深入的东西,都是通过API获取后端的数据,然后渲染到页面上。

对了,关于登录功能稍微说一下,从后端获取数据之后除了要渲染用户名、头像等之外,还要保存token、identity等数据在localStorage中,这个东西在后续需要身份验证的时候很有用。

在前后端交互的过程中,跨域是个很麻烦的问题,针对不同的报错,可以通过编写Django中间件解决:

class crossDomain(MiddlewareMixin):def process_response(self, request, response):response["Access-Control-Allow-Origin"] = "*"if request.method == "OPTIONS":response["Access-Control-Allow-Methods"] = "DELETE, PUT, POST"response["Access-Control-Allow-Headers"] = "content-type"response["Access-Control-Allow-Headers"] = "access_token"return response 12345678

后端的话,是通过Django实现的,添加了自己写的RBAC组件和Stark组件实现权限、课程、用户的管理,这方面的东西不再赘述。

先说个美中不足的地方吧,接入支付宝功能没有实现,上来第一步安装alipay-sdk-python就浪费了好多时间,这东西需要一个叫cryto的包,为了安装它我还专门又安装了一个Microsoft Visual C++ Build Tools,吐槽一句,微软真狗。

安装完了之后时间就已经超预期安排了,没有时间再详细研读支付宝开放平台的文档,没办法,这个功能就只能暂时搁置了,后续有时间再具体实现吧。

再讲讲登录,做登录认证的时候,在Redis中存储登录用户的token、username、identity等信息,方便后续某些功能需要身份验证的时候取用。

而针对不同的模型,都有其对应的序列化器Serializer处理,方便对数据的获取和验证。

Github地址:https://github.com/koking0/LuffyCity
提供几个测试账号:

学员:用户名:koking 密码:20001001
导师:用户名:wupeiqi 密码:20001001
管理员:用户名:Alex 密码:20001001

网址:在线教育平台项目——整体架构 https://www.yuejiaxmz.com/news/view/570069

相关内容

教学平台一体化建设项目:打造高效、便捷的在线教育环境
【项目】在线教育平台项目总结
在线教育平台
在线教育平台有哪些?在线教育平台排名
基于SpringBoot+Vue前后端分离的在线教育平台项目
在线教育平台优化详述.pptx
在线教育平台有哪些?中小学在线教育平台推荐
教育行业在线教学平台搭建与优化方案
如何快速搭建在线教育平台 解决教育机构转型布局线上教育的问题
教育行业在线教育平台优化方案.doc

随便看看