首页 > 其他分享 >靳宇灵 | fastadmin目录结构

靳宇灵 | fastadmin目录结构

时间:2023-07-29 10:38:58浏览次数:27  
标签:__ 文件 插件 assets 靳宇灵 文件夹 fastadmin 目录

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

mydemo //插件标识
├── application    //此文件夹中所有文件会覆盖到根目录的/application文件夹
├── assets        //此文件夹中所有文件会复制到/public/assets/addons/mydemo文件夹
├── controller    //此文件夹为插件控制器目录
├── lang            //此文件夹为插件语言包目录
├── model            //此文件夹为插件模型目录
├── library            //此文件夹为插件类目录(如有)
├── public        //此文件夹中所有文件会覆盖到根目录的/public文件夹
├── view            //此文件夹为插件视图目录
├── wxapp            //此文件夹为微信原生应用源码目录(如有)
├── uniapp            //此文件夹为Uniapp源码目录(如有)
├── licenses            //此文件夹为版权文件目录(如有)
├── Mydemo.php        //此文件为插件核心安装卸载控制器,必需存在,注意首字母大写
├── bootstrap.js    //此文件为插件JS启动文件,可选
├── LICENSE        //插件版权文件
├── config.html    //自定义插件配置视图模板,可选
├── config.php    //插件配置文件,我们在后台插件管理中点配置按钮时配置的文件,不存在时将不显示`配置`按钮
├── info.ini        //插件信息文件,用于保存插件基本信息,插件开启状态等,必需存在
├── install.sql        //插件数据库安装文件,此文件仅在插件安装时会进行导入,可选
└── testdata.sql    //插件测试数据SQL文件,此文件在安装插件时会提示是否导入测试数据,可选

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

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

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

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

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

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

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

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

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

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

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

name = mydemo
title = 示例插件
intro = 这是一个示例插件的介绍
author = FastAdmin
website = https://www.fastadmin.net
version = 1.0.0
state = 1

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

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

温馨提示

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

标签:__,文件,插件,assets,靳宇灵,文件夹,fastadmin,目录
From: https://blog.51cto.com/u_15879708/6890419

相关文章

  • 靳宇灵 | fastadmin目录结构
    FastAdmin所有应用插件都是存放在addons目录,一个插件一个目录,目录名必须和插件标识相同,且全部为小写,不允许出现大写或下划线等特殊符号。mydemo//插件标识├──application  //此文件夹中所有文件会覆盖到根目录的/application文件夹├──assets    //此文件夹......
  • linux tar命令之小知识-解压指定层级目录以及指定文件
    我们以解压k8s二进制源码文件为例,只解压出第三层级目录下的kube-apiserver、kube-controller-manager、kubectl、kubelet、kube-proxy、kube-scheduler这几个文件。k8s源码文件目录结构,目录实在太多了,我删除了大部分,不在这里显示[root@k8s-master01tmp]#treekubernetesku......
  • Centos 系统开通后修改数据盘挂载目录 /home 改到 /www
    1. df-h 查看数据盘挂载信息/dev/mapper/cs_s210981-home 345G 2.5G 343G  1%/home 2、umount/home->取消当前数据盘/dev/vdb1挂载,使用命令umount/home 3,将/dev/vdb1挂载到/www目录,使用命令mount/dev/vdb1/wwwmount/dev/mapper/cs_s210981-h......
  • android下面res目录使用
    res文件夹里面的多个文件夹的各自介绍(来自网上的Android开发指南中文版内容):  *res/raw和assets的相同点:目录Directory资源类型ResourceTypesres/anim/XML文件,它们被编译进逐帧动画(framebyframeanimation)或补间动画(tweenedanimation)对象res/drawable/.png、.9.png、.......
  • linux笔记目录
    摘要这是我学习b站hsp老师的视频做的笔记,然后根据自己的理解重新整理的因为linux的知识大都属于操作类型的,而且有些知识比较散,因此可能整理的不是很好但即便是这样,我也是认证整理了一番,有助于理解linux操作的体系,当使用指令的时候能快速定位到是哪一个指令当然,在今后的使用......
  • Kotlin 踩坑日记 总目录
    前言GoogleIO2017宣布Kotlin成为官方支持语言后,本人就开始了Kotlin从入门到放弃的路程,本着“敢为人先,淌水摸鱼”的作死励志名言,开始了Kotlin的学习,我将会把用Kotlin在Android开发中遇到的各种坑写出来,给各位看官老爷们。避免踩坑,坑到放弃。遇到了就会更新,更新时间不定哦……(BTW......
  • ubuntu 使用vsftpd 创建FTP服务(用户名密码登录,限制列出目录)
    vsftpd介绍ubuntu安装vsftpd配置vsftpd备份vsftpdconfig编辑vsftpdconfig创建登录用户添加vsftpd登录用户添加vsftpd登录用户对目录树的权限重启vsftpd服务验证ftp服务vsftpd介绍vsftpd是“verysecureFTPdaemon”的缩写,安全性是它的一个最大的特点。vsftpd是一个UNIX......
  • Windows | Linux 查找环境变量二进制所在目录
    1.Windows使用where命令wherejava2.Linux使用which命令whichjava......
  • linux统计文件/目录个数
    摘要目的:介绍以下常用的统计一个目录下文件/目录的个数指令指令功能说明选项`ll/opt/grep"^-"wc-l`统计/opt文件夹下文件的个数`ll/opt/grep"^d"wc-l`统计/opt文件夹下目录的个数`ll-R/opt/grep"^-"wc-l`统计/opt文件夹下文件的个数,包括......
  • linux分区与目录介绍
    摘要目的:介绍linux分区与目录的关系linux分区介绍1.linux分区与目录Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分。Linux采用了一种叫“载入”的处理方法,它的整个文件系统......