• TP6管理后台实战开发第一天


    第一天目标:

    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='管理员角色';
     

    但行好事,莫问前程!

    本文来自博客园,作者:yangphp,转载请注明原文链接:https://www.cnblogs.com/ypeih/p/15468551.html

  • 相关阅读:
    说说你最欣赏的数据可视化的案例
    手游破解手段介绍及易盾保护方案
    基于开源,强于开源,轻舟微服务解决方案深度解读
    八月暑期福利,10本Python热门书籍免费送!
    Android图片异步加载的方法
    和S5933比较起来,开发PLX9054比较不幸,可能是第一次开发PCI的缘故吧。因为,很多PCI的例子都是对S5933,就连微软出版的《Programming the Microsoft Windows Driver Model》都提供了一个完整的S5933的例子。 在这篇有关DDK的开发论文里。
    VS插件开发——格式化变量定义语句块
    VS2005+WINDDK+Driver Studio 3.2个人总结
    Winsock编程基础介绍 .
    ShareSDK for Android 只有新浪微博分享
  • 原文地址:https://www.cnblogs.com/ypeih/p/15468551.html
Copyright © 2020-2023  润新知