Eyoucms程序开发:路由绑定
可以使用路由绑定简化URL或者路由规则的定义,绑定支持如下方式:
绑定到模块/控制器/操作
把当前的URL绑定到模块/控制器/操作,最多支持绑定到操作级别,例如在路由配置文件中添加:
// 绑定当前的URL到 index模块
Route::bind('index');
// 绑定当前的URL到 index模块的blog控制器
Route::bind('index/blog');
// 绑定当前的URL到 index模块的blog控制器的read操作
Route::bind('index/blog/read');
该方式针对路由到模块/控制器/操作有效,假如我们绑定到了index模块的blog控制器,那么原来的访问URL从
http://serverName/index/blog/read/id/5
可以简化成
http://serverName/read/id/5
如果定义了路由
Route::get('index/blog/:id','index/blog/read');
那么访问URL就变成了
http://serverName/5
绑定到命名空间
把当前的URL绑定到某个指定的命名空间,例如:
// 绑定命名空间
Route::bind('\app\index\controller','namespace');
那么,我们接下来只需要通过
http://serverName/blog/read/id/5
就可以直接访问 \app\index\controller\Blog
类的read方法。
绑定到类
把当前的URL直接绑定到某个指定的类,例如:
// 绑定到类
Route::bind('\app\index\controller\Blog','class');
那么,我们接下来只需要通过
http://serverName/read/id/5
就可以直接访问 \app\index\controller\Blog
类的read方法。
注意:绑定到命名空间和类之后,不会进行模块的初始化工作。
入口文件绑定
如果我们需要给某个入口文件绑定模块,可以使用下面两种方式:
常量定义
只需要入口文件添加BIND_MODULE
常量,即可把当前入口文件绑定到指定的模块或者控制器,例如:
// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 绑定到index模块
define('BIND_MODULE','index');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';
自动入口绑定
如果你的入口文件都是对应实际的模块名,那么可以使用入口文件自动绑定模块的功能,只需要在应用配置文件中添加:
// 开启入口文件自动绑定模块
'auto_bind_module' => true,
当我们重新添加一个 public/demo.php
入口文件,内容和public/index.php
一样:
// 定义应用目录
define('APP_PATH', __DIR__ . '/../application/');
// 加载框架引导文件
require __DIR__ . '/../thinkphp/start.php';
但其实访问 demo.php
的时候,其实已经自动绑定到了demo
模块。
相关文档
- 使用FancyBox弹出窗口插件实现图片/视频点击弹出层浏览
- 使用VenoBox弹出窗口灯箱插件实现图片相册功能
- 使用JavaScript代码实现页面下滑时顶部导航栏固定跟随页面...
- 迅睿cms使用全局表单制作证书查询功能
- 迅睿cms使用API接口实现主站统一管理多站点群友情链接
- 网站开启强制HTTPS后,弹窗提示请使用http模式访问
- 迅睿cms服务器CPU使用率及负载状态100%如何排查解决
- 迅睿cms网站URL伪静态规则设置教程
- WordPress如何使用RSS订阅
- WordPress实现整站静态化 WP2Static使用教程
- WordPress使用区块管理器隐藏不需要的古腾堡区块
- 使用古腾堡可重用区块高效管理WordPress重复内容
- WordPress重新生成缩略图 Regenerate Thum...
- 让WordPress实现页面预加载 Instant.page使用...
- 如何让WordPress使用主题自带404页面而不是宝塔默认页面
- 外贸网站URL链接伪静态化处理及使用关键词SEO优化
- 迅睿CMS:后台登录故障{"code":1,...
- 迅睿CMS:当模块域名绑定错了如何恢复
- 迅睿CMS:物流宝使用手册
- 迅睿CMS:火车头采集插件使用方法
上一篇: Eyoucms程序开发:闭包支持
下一篇: Eyoucms程序开发:绑定模型