目录结构

FastAdmin所有应用插件都是存放在addons目录,一个插件一个目录,目录名必须和插件标识相同,且全部为小写,不允许出现大写或下划线等特殊符号。

FlmEHJzIrgZYqkycNs+quJyEa6eo9KXtB8KbhA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
mydemo //插件标识
├── application    //此文件夹中所有文件会覆盖到根目录的/application文件夹
│   └── admin
│       ├── controller
│       │   └── mydemo //插件标识
│       │       ├── Test1.php //控制器1
│       │       └── Test2.php //控制器2
│   │   ├── lang
│   │   │   └── zh-cn
│   │   │       └── mydemo
│   │   │           ├── test1.php //语言包1
│   │   │           ├── test2.php //语言包2
│       ├── model
│       │   └── mydemo
│       │       ├── Test1.php //模型1
│       │       └── Test2.php //模型2
│       └── view
│           └── mydemo
│               ├── test1  //视图目录1
│               └── test2  //视图目录2
├── assets        //此文件夹中所有文件会复制到/public/assets/addons/mydemo文件夹
├── controller    //此文件夹为插件控制器目录
├── lang            //此文件夹为插件语言包目录
├── model            //此文件夹为插件模型目录
├── library            //此文件夹为插件类目录(如有)
├── public        //此文件夹中所有文件会覆盖到根目录的/public文件夹
│   └── assets
│       └── js
│           └── backend
│               └── mydemo //插件标识
│                   ├── test1.js //脚本1
│                   └── test2.js //脚本2
├── view            //此文件夹为插件视图目录
├── wxapp            //此文件夹为微信原生应用源码目录(如有)
├── uniapp            //此文件夹为Uniapp源码目录(如有)
├── licenses            //此文件夹为版权文件目录(如有)
├── Mydemo.php        //此文件为插件核心安装卸载控制器,必需存在,注意首字母大写
├── bootstrap.js    //此文件为插件JS启动文件,可选
├── LICENSE        //插件版权文件
├── config.html    //自定义插件配置视图模板,可选
├── config.php    //插件配置文件,我们在后台插件管理中点配置按钮时配置的文件,不存在时将不显示`配置`按钮
├── info.ini        //插件信息文件,用于保存插件基本信息,插件开启状态等,必需存在
├── install.sql        //插件数据库安装文件,此文件仅在插件安装时会进行导入,可选
└── testdata.sql    //插件测试数据SQL文件,此文件在安装插件时会提示是否导入测试数据,可选
dqEGAKCNRYhroVHuzsPp+PyFtnsT7xUpqrcFFA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

其中的applicationpublic文件夹会覆盖到根目录,这两个文件夹主要用于我们后台管理功能的开发,我们可以先在后台开发好对应的管理功能后,再将对应的功能打包进插件即可,FastAdmin在插件安装和卸载时会自动进行文件冲突检测,如果遇到冲突的文件会提醒用户是否进行覆盖或删除。

fyseIMlzuLUnORvmWSEuaZmdTdy7EHpt4xWDNw==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

assets这个文件夹很关键,FastAdmin会将assets中的所有文件夹和文件复制到/public/assets/addons/插件标识/文件夹中去,assets文件夹中的所有文件不会进行文件冲突检测,/public/assets/addons/插件标识/这个目录下的文件,我们在视图文件中可以直接通过__ADDON__指向这个路径。因此在开发视图时我们可以先使用相对路径设计,完成后我们再统一加上这个__ADDON__的前缀

tcDRUSpAPGeQEXVr3M0UxAwr+oejNH80LfE4rQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

controller、lang、modelview这四个文件夹是我们插件前台功能的MVC部分,这部分文件夹不会复制或移动到其它位置。

aNLQdzgPGsBFxUbc5vvNHBqNCmgR8n67OKDJQw==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

wxapp 此文件夹微信原生开发的应用插件源码目录。

AdpxfJWamNEGtnbcuL9kUNiQlUu/2u9vRdgXmQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

uniapp 此文件夹是基于Uniapp开发的应用插件源码目录。

lsQKokrfiOcFtGzIlW/v7mEnvi7ZOTQtzvbSPQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

licenses 此文件夹是用于存放插件依赖项目版权文件的目录,一般我们开发的应用插件都会使用到一个或多个开源项目,如果开源项目文件只有一个文件,此时请将相应的版权声明文件放在该文件夹即可。

rKgcjVzaGUubdxHtBJ7aYs6z2xqNn4E1+69dTg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

Mydemo.php这个文件是插件的核心文件,我们可以在这个文件中编写插件安装或卸载时执行的脚本,或者在此插件中编写菜单的生成或删除,同时插件的行为方法也是编写在此文件中的,插件所支持的行为事件会在后面讲到。此文件命令规则为插件标识首字母大写。

jFcLavTgihCyAVIW8Y9YbZWAswICqZlCBUwFEA==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

bootstrap.js这个文件是插件的启动文件,插件在安装完启用后,FastAdmin会将此文件中的内容合并到/public/assets/js/addons.js中去,你可以在此编写插件核心JS或注册事件,在此JS中可以使用require依赖其它模块。同时在此插件中可以使用FastBackendLang等全局对象,因为在此之前此类对象已经加载且注册。

uZzlwroGhVdPecvavJvYt+axzWYCSq2uoJIacQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

config.html这个文件是插件的配置时使用的视图模板,可选,当存在时,插件管理中点配置按钮会调用这个视图文件。

eokgdlbRTJHhUwCflV/UdUssGos963jMMGQnsQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

config.php这个文件是插件的配置文件,我们在后台插件管理中点配置按钮时会保存在此文件,config.php详细使用方法和说明请参考配置章节。

xrtlsLioknzRJwPO6NNDENKBoKPrCYkVosHLJg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

info.ini这个文件仅用于保存插件基础信息和开启状态,此文件的内容格式为

fMvhBxNLFDlAnmiCQg/qWOr+gHs74ptr3RNk5A==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。
name = mydemo
title = 示例插件
intro = 这是一个示例插件的介绍
author = FastAdmin
website = https://www.fastadmin.net
version = 1.0.0
state = 1
ELvwgKYrHXtfOCoW1yTgkU54z7S1CAd5vU6bPQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

install.sql这个文件中只能是SQL语句,同时在此文件中可以使用__PREFIX__表示数据库表前缀,FastAdmin在安装导入SQL时自动进行替换。install.sql的详细使用方法请参考数据库章节

aGQxgSvhXmTNWZLFlCu/LYz+CyadZdAkAc4Uxg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

testdata.sql这个文件中只能是SQL语句,同时在此文件中可以使用__PREFIX__表示数据库表前缀,FastAdmin在安装导入SQL时自动进行替换。如果存在此文件,则在安装完插件后会提示是否导入测试数据。

SIVtyYXODTfLorFiZQhj3OBBR3CkHa0I+MLoUQ==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

特别注意

FnTbMvGqgsVDwufdRkkfsg5RnW7dIG95Gg2tOg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

application不允许新增其它的模块,只允许使用自带的indexapiadmin模块
publicassets目录下不允许任何的php/asp/jsp等服务端脚本文件

piBXJfgsltyORzvwwY1BBiRJUZk1g+vAF/8Tcg==著作权归作者所有,未经许可,禁止转载、复制此文档的任何内容。

文档最后更新时间:2024-08-27 11:25:47
著作权归应用插件开发者所有,未经许可,禁止转载、复制此文档的任何内容。

文档
目录

深色
模式

切换
宽度