FastAdmin
FastAdmin是一款基于ThinkPHP5+Bootstrap的极速后台开发框架。
感觉挺好用的。
开发文档https://doc.fastadmin.net/docs/index.html
根据文档就能马上安装上手。前提是你会thinkphp5,有过基础。
FastAdmin目录结构遵循ThinkPHP5官方建议的模块设计:
FastAdmin项目目录
├── addons //插件存放目录
├── application //应用目录
│ ├── admin //后台管理应用模块
│ ├── api //API应用模块
│ ├── common //通用应用模块
│ ├── extra //扩展配置目录
│ ├── index //前台应用模块
│ ├── build.php
│ ├── command.php //命令行配置
│ ├── common.php //通用辅助函数
│ ├── config.php //基础配置
│ ├── database.php //数据库配置
│ ├── route.php //路由配置
│ ├── tags.php //行为配置
├── extend
│ └── fast //FastAdmin扩展辅助类目录
├── public
│ ├── assets
│ │ ├── build //打包JS、CSS的资源目录
│ │ ├── css //CSS样式目录
│ │ ├── fonts //字体目录
│ │ ├── img
│ │ ├── js
│ │ │ ├── backend
│ │ │ └── frontend //后台功能模块JS文件存放目录
│ │ ├── libs //Bower资源包位置
│ │ └── less //Less资源目录
│ └── uploads //上传文件目录
│ ├── index.php //应用入口主文件
│ ├── install.php //FastAdmin安装引导
│ ├── admin.php //后台入口文件,强烈建议修改
│ ├── robots.txt
│ └── router.php
├── runtime //缓存目录
├── thinkphp //ThinkPHP5框架核心目录
├── vendor //Compposer资源包位置
├── .bowerrc //Bower目录配置文件
├── LICENSE
├── README.md
├── bower.json //Bower前端包配置
├── build.php
├── composer.json //Composer包配置
└── think
应用模块
在FastAdmin中默认有四个应用模块:admin、api、common、index,你也可以扩展开发自己的应用模块。
后台模块(admin)是FastAdmin中的核心模块,后台模块又分为系统配置、附件管理、分类管理、插件管理等多个功能模块,更多的功能模块可以在插件管理中自由的安装和卸载。
后台的前端是基于AdminLTE和Bootstrap进行了大量二次开发,采用RequireJS进行JS模块化管理和加载。
前台模块(index)的结构和后台功能类似,具体请参考后台模块的章节
公共模块(common)是一个特殊的模块,默认是禁止直接访问的,一般用于放置一些公共的类或其它模块的继承基类等。
Api模块(api)通常用于对接APP,用于向APP提供接口,目前FastAdmin暂未提供API相关的插件和文档,你可以直接参考ThinkPHP5官方的文档。
功能模块
功能模块指后台管理中的功能模块,比如我们的系统配置、附件管理、分类管理。
后台开发的每一个功能模块都是基于MVC的设计模式进行开发 。在FastAdmin中,我们提供了一键生成CRUD的功能,这个一键生成CRUD生成的文件也就是我们标准的MVC文件。
以下是一个标准的功能模块所涉及到的文件
├── application
│ └── admin
│ ├── controller
│ │ └── Test.php //控制器类
│ ├── lang
│ │ ├── zh-cn
│ │ │ └── test.php //功能语言包,按需加载
│ │ └── zh-cn.php //后台语言包,默认加载
│ ├── model
│ │ └── Test.php //模型类
│ ├── validate
│ │ └── Test.php //验证器类
│ └── view
│ └── test
│ ├── index.html //列表视图
│ ├── add.html //添加视图
│ └── edit.html //编辑视图
└── public
└── assets
└── js
└── backend
└── test.js //功能模块JS文件
在FastAdmin中每一个功能模块至少对应一个功能模块JS文件,也就是说每一个控制器都对应一个同名的JS文件,其次每一个控制器的方法对应JS文件中同名的方法。
开启调试模式的方法有两种:
1、打开application/config.php,找到app_debug,将它的值置为true即可
2、如果你有启用.env环境配置,修改其中app_debug的值为true即可。
想要更详细还是看文档吧!
FastAdmin的更多相关文章
- Fastadmin安装以及各种问题解决
FastAdmin是一款基于ThinkPHP5+Bootstrap的极速后台开发框架 https://www.fastadmin.net/ 参照官方文档安装,还是有坑的 首先注意:无需下载PHP.Th ...
- fastadmin模态框(弹出框)
用法: 在html页面新建一个按钮用来触发事件 <a href="javascript:;" class="btn btn-success btn-add &quo ...
- 基于fastadmin快速搭建后台管理
FastAdmin是一款基于ThinkPHP5+Bootstrap的极速后台开发框架:开发文档 下面对环境搭建简要概述,希望后来者能少走弯路: 1. 百度搜索最新版wampserver, 安装并启动 ...
- 了解fastadmin标准的控制器模块js的表格事件
controller/A.php<-------------->public/assets/js/backend/a.js controller/b/A.php<---------- ...
- fastadmin默认的controller已实现的方法
fastadmin控制器 <?php namespace app\admin\controller\peizi; use app\common\controller\Backend; /** * ...
- 一张图解析FastAdmin中的表格列表的功能
大图: 1.默认生成的CRUD是没有菜单名称和描述显示的,如果需要显示则可以在后台修改,权限管理->菜单规则,给对应菜单的添加上备注信息后即可显示,支持HTML 2.TAB过滤选项卡 在一键生成 ...
- fastAdmin进阶
基本知识流程一栏链接 bootstrapTable fastadmin系统配置(符内置规则): fastadmin默认的controller已实现的方法 一张图解析fastadmin的表格: fast ...
- FastAdmin 基本知识流程一栏
fastadmin进阶 安装:出现登陆页无法显示:可能是php的gd2扩展未开启 FastAdmin 在 Nginx 中的配置 用的是AdminLTE后台模板require.js.less.Bow ...
- FastAdmin 在 Nginx 中的配置
FastAdmin 使用的是 ThinkPHP 5 框架. 在 Apache 下很简单,但是在 nginx 下就需要自行配置一下了. 在网上找了很多,都没有找到很好的. 刚刚在 QQ 里群里找到一个, ...
- FastAdmin 的上传代码在哪里?
FastAdmin 的上传代码在哪里? FastAdmin 默认是通过 Ajax 上传到本地. 使用 admin/ajax/upload 方式返回 url. 代码文件地址在 application\a ...
随机推荐
- OAuth2.0的四种授权模式
1.什么是OAuth2 OAuth(开放授权)是一个开放标准,允许用户授权第三方移动应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容,OA ...
- Python 类中__init__()方法中的形参与如何修改类中属性的值
一.__init__()方法 如果__init__()方法为 class Cat(): def __init__(self,num) : self.num=num Python中类的__init__( ...
- VScode优化记录
主题: One Dark Pro VS Code 官网页面 这是为 VS Code准备的 One Dark 主题,他是 Atom 标志性的主题.需要我说更多吗?我喜欢这个主题. Mon ...
- shared pointer
#include <string>#include <fstream>#include <memory>#include <cstdio> class ...
- Python字符串逐字符或逐词反转方法
Python字符串逐字符或逐词反转方法 这篇文章主要介绍了Python字符串逐字符或逐词反转方法,本文对逐字符或逐词分别给出两种方法,需要的朋友可以参考下 目的 把字符串逐字符或逐词反转过来,这个蛮有 ...
- Response.setContentType()参数说明
response.setContentType()的参数说明 <meta http-equiv="Content-Type" content="text/html; ...
- dp[2019.5.25]_2
1.对于长度相同的2个字符串A和B,其距离定义为相应位置字符距离之和.2个非空格字符的距离是它们的ASCII码之差的绝对值.空格与空格的距离为0,空格与其他字符的距离为一定值k. 在一般情况下,字符串 ...
- 知识点整理-bio、nio的简单demo
BIO package com.io.bio; import java.io.IOException; import java.io.InputStream; import java.net.Serv ...
- Flutter中通过循环渲染组件
class ContactsState extends State<Contacts>{ List formList; initState() { super.initState(); f ...
- [Tensorflow] 使用 tf.train.Checkpoint() 保存 / 加载 keras subclassed model
在 subclassed_model.py 中,通过对 tf.keras.Model 进行子类化,设计了两个自定义模型. import tensorflow as tf tf.enable_eager ...