• python计算机毕业设计之基于django的在线学习系统 elementui


    随着计算机多媒体技术的发展和网络的普及。采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的大学生多媒体学习系统的平台,这样可以有效地解决数据学习系统混乱的局面。

    使用说明
    使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
    使用PyCharm 导入项目,修改配置,运行项目;
    将项目中config.ini配置文件中的数据库配置改为自己的配置,然后运行;
    运行成功后,在浏览器中输入:http://localhost:8080/项目名
    请添加图片描述
    本python+django+vue+Elementui+mysql系统可以定制,采用pycharm开发,基于web的B/S架构设计完成,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点,覆盖知识面大,非常适合作为计算机专业的同学参考资料进行学习.主要编程语言为python和mysql,框架是django,有代码视频讲解参考,包安装调试,包本地部署成功.请进我的个人主页关注.让你有意外惊喜.我会不定期的更新,帮助大家.请大家给个关注收藏点赞.
    请添加图片描述
    本课题拟采用基于django框架等相关技术,主要实现以下功能:
    (1)课程学习(包括课程分类 课程目录 课程学习等相关操作; (2)课程评价
    (3)课程统计 (4)相关信息管理(包括基本信息 课程编辑 注册登录等相关操作)
    请添加图片描述
    执行下面的命令来创建一个新的 Django 项目:
    django-admin startproject myproject
    命令行工具django-admin会在安装Django的时候一起自动安装好。
    执行了上面的命令以后,系统会为Django项目生成基础文件夹结构。
    现在,我们的myproject目录结构如下所示:
    myproject/ <-- 高级别的文件夹
    |-- myproject/ <-- Django项目文件夹
    | |-- myproject/
    | | |-- init.py
    | | |-- settings.py
    | | |-- urls.py
    | | |-- wsgi.py
    | ±- manage.py
    ±- venv/ <-- 虚拟环境文件夹
    前端技术:nodejs+vue+elementui
    请添加图片描述

    # coding:utf-8
    __author__ = "ila"
    
    from django.http import JsonResponse
    
    from .users_model import users
    from util.codes import *
    from util.auth import Auth
    import util.message as mes
    
    
    def users_login(request):
        if request.method in ["POST", "GET"]:
            msg = {'code': normal_code, "msg": mes.normal_code}
            req_dict = request.session.get("req_dict")
            if req_dict.get('role')!=None:
                del req_dict['role']
            datas = users.getbyparams(users, users, req_dict)
            if not datas:
                msg['code'] = password_error_code
                msg['msg'] = mes.password_error_code
                return JsonResponse(msg)
    
            req_dict['id'] = datas[0].get('id')
            return Auth.authenticate(Auth, users, req_dict)
    
    
    def users_register(request):
        if request.method in ["POST", "GET"]:
            msg = {'code': normal_code, "msg": mes.normal_code}
            req_dict = request.session.get("req_dict")
    
            error = users.createbyreq(users, users, req_dict)
            if error != None:
                msg['code'] = crud_error_code
                msg['msg'] = error
            return JsonResponse(msg)
    
    
    def users_session(request):
        '''
        '''
        if request.method in ["POST", "GET"]:
            msg = {"code": normal_code,"msg":mes.normal_code, "data": {}}
    
            req_dict = {"id": request.session.get('params').get("id")}
            msg['data'] = users.getbyparams(users, users, req_dict)[0]
    
            return JsonResponse(msg)
    
    
    def users_logout(request):
        if request.method in ["POST", "GET"]:
            msg = {
                "msg": "退出成功",
                "code": 0
            }
    
            return JsonResponse(msg)
    
    
    def users_page(request):
        '''
        '''
        if request.method in ["POST", "GET"]:
            msg = {"code": normal_code, "msg": mes.normal_code,
                   "data": {"currPage": 1, "totalPage": 1, "total": 1, "pageSize": 10, "list": []}}
            req_dict = request.session.get("req_dict")
            tablename = request.session.get("tablename")
            try:
                __hasMessage__ = users.__hasMessage__
            except:
                __hasMessage__ = None
            if __hasMessage__ and __hasMessage__ != "否":
    
                if tablename != "users":
                    req_dict["userid"] = request.session.get("params").get("id")
            if tablename == "users":
                msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
                msg['data']['pageSize'] = users.page(users, users, req_dict)
            else:
                msg['data']['list'], msg['data']['currPage'], msg['data']['totalPage'], msg['data']['total'], \
                msg['data']['pageSize'] = [],1,0,0,10
    
            return JsonResponse(msg)
    
    
    def users_info(request, id_):
        '''
        '''
        if request.method in ["POST", "GET"]:
            msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
    
            data = users.getbyid(users, users, int(id_))
            if len(data) > 0:
                msg['data'] = data[0]
            # 浏览点击次数
            try:
                __browseClick__ = users.__browseClick__
            except:
                __browseClick__ = None
    
            if __browseClick__ and "clicknum" in users.getallcolumn(users, users):
                click_dict = {"id": int(id_), "clicknum": str(int(data[0].get("clicknum", 0)) + 1)}
                ret = users.updatebyparams(users, users, click_dict)
                if ret != None:
                    msg['code'] = crud_error_code
                    msg['msg'] = ret
            return JsonResponse(msg)
    
    
    def users_save(request):
        '''
        '''
        if request.method in ["POST", "GET"]:
            msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
            req_dict = request.session.get("req_dict")
            error = users.createbyreq(users, users, req_dict)
            if error != None:
                msg['code'] = crud_error_code
                msg['msg'] = error
            return JsonResponse(msg)
    
    
    def users_update(request):
        '''
        '''
        if request.method in ["POST", "GET"]:
            msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
            req_dict = request.session.get("req_dict")
            if req_dict.get("mima") and req_dict.get("password"):
                if "mima" not in users.getallcolumn(users,users):
                    del req_dict["mima"]
                if "password" not in users.getallcolumn(users,users):
                    del req_dict["password"]
            try:
                del req_dict["clicknum"]
            except:
                pass
            error = users.updatebyparams(users, users, req_dict)
            if error != None:
                msg['code'] = crud_error_code
                msg['msg'] = error
            return JsonResponse(msg)
    
    
    def users_delete(request):
        '''
        '''
        if request.method in ["POST", "GET"]:
            msg = {"code": normal_code, "msg": mes.normal_code, "data": {}}
            req_dict = request.session.get("req_dict")
    
            error = users.deletes(users,
                users,
                req_dict.get("ids")
            )
            if error != None:
                msg['code'] = crud_error_code
                msg['msg'] = error
            return JsonResponse(msg)
    
    
    • 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
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109
    • 110
    • 111
    • 112
    • 113
    • 114
    • 115
    • 116
    • 117
    • 118
    • 119
    • 120
    • 121
    • 122
    • 123
    • 124
    • 125
    • 126
    • 127
    • 128
    • 129
    • 130
    • 131
    • 132
    • 133
    • 134
    • 135
    • 136
    • 137
    • 138
    • 139
    • 140
    • 141
    • 142
    • 143
    • 144
    • 145
    • 146
    • 147
    • 148
    • 149
    • 150
    • 151
    • 152
    • 153
    • 154
    • 155
    • 156
    • 157
    • 158
    • 159
    • 160
    • 161
    • 162

    目录
    1 绪论 1
    1.1课题背景 1
    1.2课题研究现状 1
    1.3初步设计方法与实施方案 2
    1.4本文研究内容 2
    2 系统开发环境 4
    2.1 使用工具简介 4
    2.2 环境配置 4
    2.3 B/S结构简介 4
    2.4 MySQL数据库 5
    2.5 框架介绍 5
    3 系统分析 6
    3.1系统可行性分析 6
    3.1.1经济可行性 6
    3.1.2技术可行性 6
    3.1.3运行可行性 6
    3.2系统现状分析 6
    3.3功能需求分析 7
    3.4系统设计规则与运行环境 8
    3.5系统流程分析 8
    3.5.1操作流程 8
    3.5.2添加信息流程 9
    3.5.3删除信息流程 10
    4 系统设计 11
    4.1系统设计主要功能 11
    4.2数据库设计 11
    4.2.1数据库设计规范 11
    4.2.2 E/R图 11
    4.2.3数据表 12
    5 系统实现 25
    5.1系统功能模块 25
    5.2后台模块 27
    5.2.1管理员功能模块 27
    5.2.2用户功能模块 30
    6 系统测试 33
    6.1功能测试 33
    6.2可用性测试 33
    6.3性能测试 34
    6.4测试结果分析 34
    7结 论 35
    参考文献 36
    致 谢 37

  • 相关阅读:
    WebGIS开发教程:geojson
    如何使用飞书快捷指令无感记账,ios版
    排序算法之---快速排序
    浅学 WebAssembly(实现视频实时滤镜效果)
    查看symbol的位置
    WPF MVVM实现TreeView层级显示
    antd tree 懒加载+局部刷新
    如何裁剪视频?这两个简单方法你们还不快来学
    vue3对象reactive()数据改变页面不刷新
    C++比Java,python快的原因
  • 原文地址:https://blog.csdn.net/qqvx_6310855/article/details/126874126