实战二:CMDB之资产管理系统

阅读: 14681


一、概述

其实,一开始写这个实战项目,我是拒绝的,因为复杂,因为很多内容其实和Django无关,因为要考虑的问题太多。可是,如果不写一个有点含金量、贴近运维实际的项目,那么教程又流于形式,与一些不痛不痒的文章没什么区别。

说明:本项目不是一个完整的CMDB系统,主要针对其最重要的资产管理系统。

本实战项目主要是给大家提供一个基本思路和大致解决方案,而不是让你抄了代码就直接上线的。这里不考虑特别细的细节,也无法实现所有的业务逻辑,更不能作为考核的对象,所以请不要纠结这个地方应该是这样,那个地方不应该是那样的问题,而是关注原来CMDB是这么回事,可以通过哪种技术途径实现,大概要什么样的技术这些问题,主要的代码片段是哪些。

整个项目最麻烦的就是数据的规格性、合法性、完整性和数据类型的验证。不同的环境生成不同的数据,为了保证程序的健壮性,必须进行一系列的逻辑判断,这些都需要根据实际情况实际解决。作为一个教程的实战项目,不可能考虑得面面俱到,并且覆盖所有情况。由于项目中的数据收集客户端是由我们自己编写的,所以这里我默认客户端发送过来的数据是规整的,数据类型是正确的

本实战项目不是一个“标准化”的Django项目,由于具体情况的差别,肯定会有各种问题和异常,这也是公司需要招聘Python工程师根据自身情况进行二次开发原因。本项目作为一个教程项目,无法做到面面俱到,也不可能什么问题都能解决,在实践过程中发生问题在所难免,所以请大家务必仔细排查自己的环境,不要一上来就否定这否定那。

重要说明:

  1. 默认你已经有了一定的Python和Django基础,否则请学习网站的相关部分内容;
  2. 默认你具有一定的Linux操作系统基础,最好是运维人员;
  3. 项目基于Python3.6、Django1.11.7、Pycharm、windows7/10;

本项目的所有代码可以从Github上下载,地址为:

https://github.com/feixuelove1009/liujiangblog_project_2

在Linux下直接使用:

git clone https://github.com/feixuelove1009/liujiangblog_project_2

在Windows下,通过Pycharm就可下载,当然也可以使用git软件下载。

二、项目展示

仪表盘:

1.jpg-134.1kB

折叠状态的仪表盘:

2.jpg-71.9kB

资产总表:

3.jpg-219.9kB

侧边栏缩放的资产总表:

4.jpg-103.7kB

资产详细表一:

5.jpg-157.8kB

资产详细表二:

6.jpg-172.9kB

项目的前端使用的是开源的AdminLTE模板,不仅美观大方,而且基于Bootstrap3的特性,对移动设备和小屏端有很好的支持。



评论总数: 5



user_image
作者您好

为什么我再ubuntu中把您的程序下载下来后按着步骤操作,最后访问网页的时候显示File "/home/mingyuegx/Desktop/liujiangblog_project_2/assets/views.py", line 23, in dashboard up_rate = round(upline/total*100) ZeroDivisionError: division by zero

user_image
感谢作者,问题解决了

问题解决了,是我自己没有新建数据,多以不能显示。再次谢谢作者的教程,对我的帮助很大。

user_image
。。。

感觉这个实例有点复杂。

user_image
把实战一和实战二综合在一起,是不是安排两个app比较合适?

建立一个有用户账号管理的CMDB系统。楼主能否给一个推荐的项目目录结构啊?

user_image
(*@ο@*) 哇~

有又更新了!