[fastadmin] 第五十一篇 FastAdmin 插件-插件路由
前言
www.shopapp.com/index.php/addons/sh...
这种是什么路由模式?
这是 ThinkPHP 5.x 的插件路由模式,具体分析如下:
路由结构解析
http://www.shopapp.com/index.php/addons/shopro/user.user/profile
- 路由组成部分
index.php - 入口文件
addons - 插件模块标识
shopro - 插件名称
user.user - 控制器路径(分组.控制器)
profile - 方法名
2. 对应的文件结构
addons/
└── shopro/
└── controller/
└── user/ # 分组目录
└── User.php # 控制器文件
- 控制器文件示例
<?php
namespace addons\shopro\controller\user;
class User extends \addons\shopro\controller\Common
{
public function profile()
{
// 用户资料页面逻辑
}
}
路由模式类型
标准模式(当前使用)
/addons/插件名/分组.控制器/方法/addons/shopro/user.user/profile
简化模式
/addons/插件名/控制器/方法/addons/shopro/user/profile
美化模式(需要配置URL重写)
/shopro/user/profile
FastAdmin中的插件路由配置
通常在插件的 config.php
中配置:
// addons/shopro/config.php
return [
'route' => [
// 路由规则
],
// 其他配置
];
你的商城可以参考
如果你要创建类似的路由结构:
// 文件:addons/aijiu/controller/user/Profile.php
namespace addons\aijiu\controller\user;
class Profile extends \addons\aijiu\controller\Common
{
public function index()
{
// 个人主页
}
public function yuanbao()
{
// 元宝管理
}
public function invite()
{
// 邀请页面
}
}
对应的路由就是:
yoursite.com/index.php/addons/aijiu...
yoursite.com/index.php/addons/aijiu...
yoursite.com/index.php/addons/aijiu...
这种路由模式的好处是结构清晰,便于管理大型插件的多个功能模块。
本作品采用《CC 协议》,转载必须注明作者和本文链接