第一天目標:
1、選擇管理后台模板
2、選擇所用到的框架
3、配置開發環境
4、建立后台需求
5、建立數據表
說實話這個工作量相對於第一天來說還是有點多的。
基本上第一天沒有編碼工作,所以其他內容弄的多一點!
開搞:
1、選擇管理后台模板
開發后台,一般都是自己找個后台模板直接去套就好了。
真沒那條件,產品畫原型,然后做設計,再前端人員切圖排版做頁面,最后在給到開發人員開發。
做了十年開發了,基本上都是一個人干的這種,沒啥好抱怨的,開搞。
后台模板選擇 adminx 一個簡單完美的后台,用起來體驗很不錯,開源免費的前端框架,可惜的是現在停止維護了。
選擇的版本是:V2.2 版本
2、選擇所用到的開發框架
開發語言是PHP,框架選擇 ThinkPHP 6.0.9版本,也是的當前的穩定版本
說明一下
之前雖然項目中有用到TP開發項目,但是代碼不是我寫的,選擇這個框架純屬個人做測試和學習,
並不是老手,有寫的不好可以寫到評論里面,最好帶有正確的方法,相互交流,勿噴。
3、配置開發環境
開發環境選擇的是 phpstudy 小皮面板集成工具。
MySql版本為:5.7.26
PHP版本為:7.3.4
Nginx版本為:1.15.11
配置的虛擬域名為
www.tp6.cn
Nginx偽靜態配置為:
if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; }
開發完畢會更新到github上面,github地址為
https://github.com/yangphp
4、建立后台需求
管理后台需求寫的比較簡單,大概欄目寫出來即可,具體每個欄目里面的東西個人發揮。
實際項目開發中,可能需求會比這個再具體一點,不然會導致寫的亂七八糟的。
對於老手來說沒必要那么具體了,每個欄目基本上都是增刪查改和相關的管理功能。
后期實際開發的話,可能跟這個需求還會有點出入,畢竟計划趕不上變化。
4.1、管理員登錄
賬號,密碼,驗證碼,記住密碼
4.2、控制台功能
1、管理員查看個人信息
2、管理員修改密碼
4.3、管理員管理
添加管理員
修改管理員
角色管理(添加角色,修改角色,刪除角色)
角色權限管理
4.4、日志管理
管理員登錄日志
管理員操作日志
4.5、文章管理,分類管理
文章列表
添加文章
修改文章
文章分類
添加分類
4.6、用戶管理
用戶列表
添加用戶
用戶角色管理
違規用戶管理
4.7、訂單管理
訂單列表
訂單處理
4.8、系統管理
公告管理
廣告圖管理
城市信息管理
系統設置
4.9、商品管理
商品列表
添加商品
商品分類管理
5、建立數據表
管理員表 yphp_admin
管理員角色表 yphp_admin_role
管理員操作日志表 yphp_admin_op_log
管理員登錄日志表 yphp_admin_login
管理員菜單權限表 yphp_admin_power
文章表 yphp_news
文章分類表 yphp_news_cate
用戶表 yphp_user
用戶角色表 yphp_user_role
用戶關系表 yphp_user_relation
用戶登錄日志表 yphp_user_login
用戶消息表 yphp_user_msg
系統公告表 yphp_system_notice
系統廣告表 yphp_system_ads
系統廣告表位 yphp_system_ads_pos
系統城市信息表 yphp_system_region
系統設置表 yphp_system_setting
先這些表把,開發的時候不夠用了,再補
商城相關的表放到第二期吧,不然內容太多了
商品表 yphp_goods
商品分類表 yphp_goods_cate
商品屬性表 yphp_goods_attr
商品輪播圖 yphp_goods_banner
商品詳情圖 yphp_goods_info
購物車表 yphp_goods_cart
訂單表 yphp_order
訂單商品表 yphp_order_goods
建表說明:
建立數據表這一塊,基本上根據經驗來的。
功能做的多了,看的多了,自然知道每個功能需要的數據結構是怎么樣的。
還有一種比較快速的方法就是 ,多看幾款比較大型的CMS系統,研究里面的功能設計,看的多了就記住了。
分享幾個表結構:
1 -- 管理員表 2 CREATE TABLE `yphp_admin` ( 3 `admin_id` int(11) NOT NULL AUTO_INCREMENT, 4 `admin_name` varchar(30) NOT NULL, 5 `admin_pwd` varchar(100) NOT NULL, 6 `admin_truename` varchar(20) DEFAULT NULL, 7 `admin_mobile` varchar(11) DEFAULT NULL, 8 `admin_dept` varchar(30) DEFAULT NULL, 9 `admin_role_id` int(11) DEFAULT '0', 10 `admin_role_name` varchar(30) DEFAULT NULL, 11 `admin_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '1 正常 2 限制登錄 3 封禁', 12 `add_datetime` datetime NOT NULL, 13 PRIMARY KEY (`admin_id`) 14 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='管理員'; 15 16 --管理員操作日志 17 CREATE TABLE `yphp_admin_op_log` ( 18 `id` int(11) NOT NULL AUTO_INCREMENT, 19 `admin_id` int(11) DEFAULT '0', 20 `admin_name` varchar(30) DEFAULT NULL, 21 `op_url` varchar(100) DEFAULT NULL, 22 `op_param` varchar(200) DEFAULT NULL, 23 `op_controller` varchar(50) DEFAULT NULL, 24 `op_action` varchar(50) DEFAULT NULL, 25 `ip_address` varchar(20) DEFAULT NULL, 26 `add_datetime` datetime DEFAULT NULL, 27 PRIMARY KEY (`id`) 28 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='管理員操作日志'; 29 30 -- 管理員權限表 31 CREATE TABLE `yphp_admin_power` ( 32 `id` int(11) NOT NULL AUTO_INCREMENT, 33 `pname` varchar(30) NOT NULL, 34 `ptype` tinyint(1) NOT NULL DEFAULT '1' COMMENT '1 一級菜單 2 二級菜單 3 操作', 35 `parent_id` int(11) NOT NULL DEFAULT '0', 36 `pcontroller` varchar(50) DEFAULT NULL, 37 `paction` varchar(50) DEFAULT NULL, 38 `pstatus` tinyint(1) DEFAULT '1' COMMENT '1 啟用 2 關閉', 39 `add_datetime` datetime DEFAULT NULL, 40 PRIMARY KEY (`id`) 41 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='權限表'; 42 43 -- 管理員角色表 45 CREATE TABLE `yphp_admin_role` ( 46 `role_id` int(11) NOT NULL AUTO_INCREMENT, 47 `role_name` varchar(30) DEFAULT NULL, 48 `role_desc` varchar(255) DEFAULT NULL, 49 `role_powers` text, 50 PRIMARY KEY (`role_id`) 51 ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='管理員角色';
