標籤:

10min手寫(b四):b寫配置文件生成增刪改查系統

運維人員都不喜歡搞CMDB,因為有很多前端的內容,但CMDB卻在運維圈佔有重要的地位,開發CMDB就是各種增刪改查,之後我有個想法,做一個寫配置文件就自動生成頁面的CMDB。

寫好配置文件,自從生成頁增刪改查面不是夢

此項目不僅限於cmdb,各種管理系統,都可以用此項目配置。改成學生老師什麼的,就變成了學校內部的mis系統,我會一直維護這個項目,大家有新需求請提issue。

效果圖(我們只寫左邊的配置,右邊的是自動生成的)

簡單配置,生成頁面

命令只有兩個:

python woniu-build.py init # 初始化資料庫+根據配置生成文件npython woniu-build.py # 僅根據配置生成文件n

使用指南

  1. 下載該項目到本地(shengxinjing/woniu-cmdb · GitHub)

  2. config.py是我們唯一要修改的文件

  3. 修改config.py里的db_config變數,配置資料庫的host,用戶名,密碼和要操作的資料庫

db_config = { nhost:localhost, nuser:root, npasswd:"", ndb:cmdbnn}n

修改config.py的page_config變數,此變數是設置具體的頁面變數,先做一個簡單的配置:

page_config = { # menu是一個list,包含所有的頁面信息n "menu":[{n //頁面的名字,和資料庫表一致 n"name": user,n // 顯示的頁面標題 n"title": 用戶管理, n# 頁面里具體的欄位,如果有兩個欄位,配置兩個即可,包含name和titlen "data": [{ n"name": username, n"title": 用戶名n },{ n"name":password, n"title":密碼n }]n }}]n}n

  • 執行 python woniu-build.py 處理文件,啟動flask_web.py,瀏覽器訪問localhost:9092/

  • 默認有一個用戶,賬號和密碼都是51reboot

欄位詳解

  • page_config配置

menu:下面具體介紹,頁面具體的欄位n favicon:頁面標籤的小logo 默認用reboot的n title:頁面標籤的標題,默認是woniu-cmdbn brand_name:項目左上角顯示文字,默認是woniu-cmdbn

  • menu配置詳解

{n name:名字和資料庫表名一直n titile:中文n modal_detail:是否用模態窗展示詳情(有隱藏欄位沒展示)n 具體欄位數據n data:[n {n name:n title:n type:類型,默認input textn value:select直接從value里渲染,不發ajax和preload,如果沒有type,就是input里的value屬性n select_type:獲取數據的action_type的值,和對應的name欄位一致n toname:preload數據里,完成id到name得轉換顯示,select默認truen hide:默認false,true的話隱藏此欄位n option_val list的顯示欄位 默認idn option_name list的顯示欄位 默認namenn }n ]n}n

To do list:

  • 登錄許可權+頁面許可權

  • 更豐富的前端組件,現在只支持輸入,日期和下拉框

  • 大家有需求請提issues, 我會持續維護這個項目

依賴

本項目Python依賴Flask和Mysqldb模塊,直接pip安裝一下即可

線上demo

線上demo:admin.51reboot.com/

python 10min系列之cmdb

著作權歸作者所有。

商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

作者:shengxinjing (woniuppp) · GitHub

鏈接:10min手寫(四):寫配置文件生成增刪改查系統 - 面向工資編程 - 知乎專欄

來源:知乎

運維開發交流QQ群: 238757010

歡迎大家關注公共號,高品質運維開發

基情授權,非授權拒絕任何形式的轉載。


推薦閱讀:

為什麼網路爬蟲好難,涉及到的知識我不會?
我用Python爬美圖,妹子多多,自己動手不孤獨
ELEMENTARY.03.First Word
一道入群驗證的Python題

TAG:Python |