Python毕业设计基于django的求职与招聘网站的设计与实现

文末获取资源,收藏关注不迷路

一、项目介绍

本前途招聘求职网站是针对目前仓库的实际需求,从实际工作出发,对过去的前途招聘求职网站存在的问题进行分析,完善用户的使用体会。采用计算机系统来管理信息,取代人工管理模式,查询便利,信息准确率高,节省了开支,提高了工作的效率。
本系统结合计算机系统的结构、概念、模型、原理、方法,在计算机各种优势的情况下,采用Python语言,结合django框架与Vue框架以及MYSQL数据库设计并实现的。它帮助招聘实现了信息化、网络化,通过测试,实现了系统设计目标,相比传统的管理模式,本系统合理的利用了招聘数据资源,有效的减少了求职招聘管理的经济投入,大大提高了前途招聘求职网站的效率。

社会的发展和科学技术的进步,互联网技术越来越受欢迎。网络计算机的生活方式逐渐受到广大人民群众的喜爱,也逐渐进入了每个学生的使用。互联网具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。
本文从学生的功能要求出发,建立了校园兼职系统 ,系统中的功能模块主要是实现管理员;首页、个人中心、专业管理、商家管理、热门兼职管理、学生管理、兼职接单管理、学生咨询管理、兼职任务管理、完成评价管理、管理员管理、系统管理,学生;首页、个人中心、兼职接单管理、学生咨询管理、兼职任务管理、完成评价管理、我的收藏管理,商家;首页、个人中心、热门兼职管理、兼职接单管理、学生咨询管理、兼职任务管理、完成评价管理,前台首页;首页、商家、热门兼职、公告资讯、个人中心、后台管理、投诉反馈等功能部分;经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与校园兼职系统实现的实际需求相结合,讨论了Python开发的校园兼职系统的使用。

二、主要使用技术

环境需要
1.运行环境:python3.7/python3.8。
2.IDE环境:pycharm+mysql5.7;
3.数据库工具:Navicat11
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.数据库:MySql 5.7版本;
技术栈
后端:python+django
前端:vue+CSS+JavaScript+jQuery+elementui

使用说明
使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
使用PyCharm 导入项目,修改配置,运行项目;
将项目中config.ini配置文件中的数据库配置改为自己的配置,然后运行;
运行成功后,在浏览器中输入:http://localhost:8080/项目名

三、研究内容

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、核心代码

# 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")
        req_dict['role'] = '管理员'
        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系统设计思想 1
2相关技术 3
2.1 MYSQL数据库 3
2.2 B/S结构 3
2.3 Djangot框架简介 4
2.4 VUE框架 4
3系统分析 5
3.1可行性分析 5
3.1.1技术可行性 5
3.1.2经济可行性 5
3.1.3操作可行性 5
3.2系统性能分析 6
3.2.1 系统安全性 6
3.2.2 数据完整性 6
3.3系统界面分析 6
3.4系统流程和逻辑 8
4系统概要设计 9
4.1概述 9
4.2系统结构 10
4.3.数据库设计 11
4.3.1数据库实体 11
4.3.2数据库设计表 13
5系统详细实现 17
5.1 管理员模块的实现 17
5.2用户模块的实现 19
6系统测试 21
6.1概念和意义 21
6.2特性 22
6.3重要性 22
6.4测试方法 23
6.5 功能测试 23
6.6可用性测试 24
6.7性能测试 24
6.8测试分析 24
6.9测试结果分析 25
结论 25
致谢语 26
参考文献 26

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Recruitment主要有用户注册、用户登录、个人用户、企业用户、管理员五大功能模块。 1.用户注册功能模块: (1)个人用户注册功能:个人用户注册时,选择用户类型为个人用户,需要输入正确的验证码,还要通过各项数据检查。 (2)企业用户注册功能:企业用户注册时,选择用户类型为企业用户,需要输入正确的验证码,还要通过各项数据检查。 2.用户登录功能模块: (1)个人用户登录功能:个人用户登录时,选择用户类型为个人用户,登录进入个人用户页面。 (2)企业用户登录功能:企业用户登录时,选择用户类型为企业用户,登录进入企业信息注册页面。 3. 个人用户功能模块:求职人员可以通过注册成为网站个人用户,通过该网站来寻找理想的职位。 (1) 简历管理功能:个人用户可以对自己的简历进行创建、编辑、删除、刷新等操作,个人用户最多可以创建3个简历。 (2) 职位搜索功能:个人用户可以通过职位名称搜索自己所求的职位信息,查看全部职位列表,从中选出薪水、工作要求等都满足自己需求的企业。 (3) 企业搜索 & 投递简历:个人用户可以搜索了解有意向的企业,并投递自己的简历。 (4) 站内消息功能:个人用户通过查看站内消息,了解自己的简历是否通过企业筛选,能够进入企业面试环节。 (5) 修改密码功能:个人用户可以修改自己的密码。 (6) 注销账户功能:个人用户可以自己注销账户信息(该功能和删除用户有相同功能,有些问题,可以修改成可恢复用户形式的注销账号功能)。 (7) 退出登录功能:个人用户可以退出登录,返回未登录前的页面。 4. 企业用户功能模块:企业可以通过注册成为网站企业用户,发布招聘信息,快速招聘到所需人员帮助企业工作。 (1) 企业信息注册功能:企业用户在登录时,需要先注册名下的企业信 息,等待管理员审核成功后,才能够登录成功,否则将一直处在等待审核页面。 (2) 企业信息修改功能:企业用户可以在企业信息变更的时候,即时更改自己的企业信息,防止信息有误,求职者找不到企业工作地点。企业信息修改也需要管理员审核。 (3) 职位管理功能:企业用户可以通过职位管理功能,进行发布招聘职位需求,修改职位需求,取消职位,查询职位信息操作,随时能够发布招聘需求的职位信息,招聘企业所需的人员,当职位人员招聘足够时,也能够取 消发布的职位。企业用户在发布和修改职位信息时,需要管理员审核成功后, 才能被求职者所见。 (4) 查看投递简历功能:企业用户可以查看求职者投递的简历,企业用户也可以按照求职意向关键字搜索求职者投递的简历。 (5) 审核投递简历功能:企业用户拥有审核求职者投递的简历是否满足要求的权利。通过审核向个人用户发送消息,让个人用户能够及时了解企业的意向情况,根据情况做出其他选择。 (6) 修改密码功能:企业用户可以修改自己的密码。 (7) 注销账户功能:企业用户可以自己注销账户信息(该功能和删除用户有相同功能,有些问题,可以修改成可恢复用户形式的注销账号功能)。 (8) 退出登录功能:企业用户可以退出登录,返回未登录前的页面。 5. 管理员用户功能模块:拥有职权的网站内部管理员可以通过网站内部管理员账号登录Recruitment的后台管理系统对Recruitment进行管理。 (1) 用户管理功能:管理员可以对企业用户信息进行管理,审核企业注册和修改企业信息的真实性以及企业职位发布的真实性,对多次被举报的企业用户可以进行强制删除账号。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值