在各学校的教学过程中,django项目校内申报平台系统是一项非常重要的事情。随着计算机多媒体技术的发展和网络的普及。采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的django高校学生项目校内申报平台,这样可以有效地解决django高校学生项目校内申报平台混乱的局面。
 本文首先介绍了django项目校内申报平台系统的发展背景与发展现状,然后遵循软件常规开发流程,首先针对系统选取适用的语言和开发平台,根据需求分析制定模块并设计数据库结构,再根据系统总体功能模块的设计绘制系统的功能模块图,流程图以及E-R图。然后,设计框架并根据设计的框架编写代码以实现系统的各个功能模块。最后,对初步完成的系统进行测试,主要是功能测试、单元测试和性能测试。测试结果表明,该系统能够实现所需的功能,运行状况尚可并无明显缺点。
 
 
 功能介绍
 为了更好的去理清本系统整体思路,对该系统以结构图的形式表达出来,设计实现该高校学生项目校内申报系统的功能结构图如下所示
 
 
 执行下面的命令来创建一个新的 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 绪论 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


















