django基于python的企业it资产管理系统(源码+LW+部署讲解)

前言

💗博主介绍:✌全网粉丝30W+,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌
💗主要内容:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。✌💗
👇🏻 精彩专栏 推荐订阅👇🏻
2025-2026年最值得选的微信小程序毕业设计大全:100个热门选题推荐✅
2025-2026年最值得选的Java毕业设计选题大全:500个热门选题推荐✅
Java毕业设计项目精品实战案例《3000套》
微信小程序毕业设计项目精品案例《3000套》
2025-2026Python项目实战《100套》
🌟文末获取源码+数据库🌟
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人

详细视频演示

请联系我获取更详细的演示视频

具体实现截图

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

技术栈

Python语言

Python 是一个高层次的脚本语言结合了解释性、编译性、互动性和面向对象的。Python 的设计,相比其他语言经常使用英文关键字和其他语言的一些标点符号,它具有比其他语言更有特色语法结构,具有很强的可读性。
解释型语言:类似于PHP和Perl语言,这意味着开发过程中没有了编译这个环节。
交互式语言:可以在一个 Python 提示符 >>> 后直接执行代码。
面向对象语言:Python支持面向对象的风格或代码封装在对象的编程技术。

Django框架

Django用Python编写,属于开源Web应用程序框架。采用(模型M、视图V和模板t)的框架模式。该框架以比利时吉普赛爵士吉他手詹戈·莱因哈特命名。该架构的主要组件如下:
1.用于创建模型的对象关系映射。
2.最终目标是为用户设计一个完美的管理界面。
3.是目前最流行的URL设计解决方案。
4.模板语言对设计师来说是最友好的。
5.缓存系统。

前端框架Vue

Vue.js 是一种流行的开源 JavaScript 框架,用于构建用户界面。Vue.js 被迅速广泛采纳,成为现代 Web 开发的热门选择。Vue.js 的设计目标是通过提供简洁、灵活的工具,让开发者更容易构建交互性的 Web 界面。Vue.js 的核心是可复用的组件。借助于组件化的开发和可扩展性特性,Vue.js 能够轻松地构建复杂的单页应用(SPA)和前端应用。Vue.js 拥有简单易学的API,使得初学者可以迅速上手,同时也提供了高度灵活性和实用性,能够满足复杂应用程序的需求。Vue.js 支持响应式数据绑定,这意味着当数据发生变化时,页面上的内容会自动更新,使得应用程序的状态管理更加简单。同时,Vue.js 也提供了虚拟DOM(Virtual DOM)技术,通过精巧地处理 DOM 更新,提高了程序的性能和效率。Vue.js 融合了现代化的前端工具和开发流程,例如单文件组件(Single File Components),允许开发者在一个文件中编写HTML、CSS和JavaScript代码,以更好地组织和管理应用程序的文件。此外,Vue.js 还提供了丰富的生态系统,包括Vue Router用于构建SPA路由、Vuex用于状态管理、Vue CLI用于快速搭建项目和工程等等,这些工具和插件为开发者提供了多种可能性。总而言之,Vue.js 是一款灵活、高效、易用的JavaScript框架,使得构建交互式的前端应用变得更为简便。其优秀的设计理念、丰富的功能特性和活跃的社区支持,使得Vue.js 成为众多开发者心目中最佳的前端框架选择。

MySQL数据库

MySQL作为数据库拥有很多优点,其中由于是开放源码,所以使用成本特别低,而它体积小的特点决定了速度快的特性。因此,MySQL具有开放性,多线程支持多种API,可跨数据库连接,国际化,数据库体积巨大等特点。简单的来说,MySQL是一个开放的、快速的、多线程的、多用户的数据库服务器。
选用MySQL作为数据库的其中一个原因就是支持多线程,支持多线程的特点为利用系统资源提供了便捷并因此大大提高了系统运行速度和效率,而且连接数据库的方式多样包括但不局限于TCP/IP、ODBC和JDBC等途径;但是没有东西是完美无缺的,即便MySQL也如此,虽说它有着众多优点但其功能不够强大,规模也相对较小,无法应对大型数据哭的处理。但是对于本系统来说,选用MySQL作为数据库,其功能性能已绰绰有余,如果要进行二次开发的数据库表结构空间的扩展也是完全可行的。综上所述,MySQL是作为本系统数据库的最优选择。

核心代码

# 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
from dj2.settings import host,port,user,passwd,dbName,hasHadoop

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)

源码获取

文章下方名片联系我即可~
✌💗大家点赞、收藏、关注、评论啦 、查看✌💗
👇🏻获取联系方式👇🏻
精彩专栏推荐订阅:在下方专栏👇🏻

  • 15
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# CMDB and ansible ui ## 安装参考 - python2.7 - 使用sqlite需要初始化数据库 - 如使用mysql需要创建CMDB库,映射,修改setting数据库信息 - 安装步骤查看help/install - 初次使用需要注册用户(之后会加入用户权限控制) ## 资产管理 ### 1、添加主机 **单台主机添加,需要填写主机的全部信息,一次只能添加一台** ![](http://i.imgur.com/QoPa8ze.png) **批量添加主机,切记不用填写主机的全部信息,只需写ip 主机名即可,写多会报错(下个版本会增加判断用户的输入)** ![](http://i.imgur.com/dr4SPXC.png) ![](http://i.imgur.com/jtXDNbv.png) **提交后,会提示提交成功的有几个,如果重复多次提交,就会提示有几台服务器已存在** ### 2、主机列表 **资产管理==>>主机列表** ![](http://i.imgur.com/CB5JFWZ.png) 1. **更新:点击绿色更新按钮,然后鼠标放到主机名的位置,就会显示服务器的基本信息,第一次不点击更新不会显示,每次点击都会重新获取,如服务器可变化的参数:内存等等,如下图:** ![](http://i.imgur.com/jTpGORn.png) 2. **编辑:点击编辑按钮,可以修改服务器的信息,这里以数据库的ID为主键,所以IP也可以修改,可以理解为原来的删除又重新创建,但是主键ID不改变,如下图:** ![](http://i.imgur.com/FI3tSih.png) 3. **删除:点击删除按钮,此服务器就会被删除,需要注意的是,在密钥管理菜单中也有主机列表,那个主机列表的删除仅仅是删除服务器上的所有公钥,不会删除服务器,如下图:** ![](http://i.imgur.com/oKIRIlk.png) ## 密钥管理 ### 1、密钥用户 **以用户为入口,可以增加密钥用户,修改用户公钥,对某用户授权其可以登陆的服务器** **增加密钥用户:填写用户名,公钥(公钥格式要填写正确,否则无法推送)** ![](http://i.imgur.com/B7mA92i.png) ![](http://i.imgur.com/CalhJM3.png) 1. **编辑:点击编辑,弹出一个主机列表,可以对主机列表的服务器给此用户授权,主机列表的服务器就是资产管理中添加的主机,如下图:** ![](http://i.imgur.com/BGMqy1d.png) **添加成功后,鼠标点击可登陆的服务器数即能显示此用户可以登陆的服务器,如果不看,需要再点击一次,多台服务器的话都可以点出来,一起看,如下图:** ![](http://i.imgur.com/tctIbIG.png) 2. **删除:删除会删除此用户的所有的授权信息,并把此用户的可登陆的服务器的公钥都删除,但不会删除用户本身,之后的版本会加入离职人员,删除授权信息加用户本身,如下图:** ![](http://i.imgur.com/lzB8715.png) ![](http://i.imgur.com/04kfMAi.png) 3. **更新公钥:可以对此用户的公钥修改更新,如下图:** ![](http://i.imgur.com/mC0McnZ.png) ### 2、主机列表 **以主机为入口,可以对服务器进行用户授权,删除权限** ![](http://i.imgur.com/2vAdfgu.png) 1. **编辑:编辑显示用户列表,表示对此服务器可以允许哪些用户登录,如下图:** ![](http://i.imgur.com/5zbhdos.png) **授权成功后,点击允许登陆的用户,即可显示此服务器允 -------- 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! <项目介绍> 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值