CakePHP 和 URL 中的插件
我在 CakePHP 应用程序中使用一个插件以及其中的一些(管理)视图。插件视图内的 URL 使用如下结构:
$html->url(array('plugin' => 'thePlugin', 'controller' => 'theController', ...));
当在同一页面上使用其他 URL(例如在布局文件中)时,CakePHP 会将此插件参数附加到每个 URL,除非插件参数设置为 null
:
$html->url(array('plugin' => null, 'controller' => 'otherController', ...));
这就是 CakePHP 的“魔力”。好的!
但是,有没有办法禁用插件参数或将默认值设置为 null
,除非在 $html->url()
中显式设置该参数?不用重写每个 URL 并添加 'plugin' => 会节省大量时间。 null
禁用此参数。
感谢您的提示!
I'm using a plugin in a CakePHP app together with some (admin) views in it. The URLs inside the plugin views use a structure like:
$html->url(array('plugin' => 'thePlugin', 'controller' => 'theController', ...));
When using other URLs on the same page (e.g. in the layouts file), CakePHP attaches this plugin parameter to every URL, except the plugin parameter is set to null
:
$html->url(array('plugin' => null, 'controller' => 'otherController', ...));
That's the "magic" of CakePHP. Nice!
But is there a way to disable the plugin parameter or set the default value to null
unless the parameter is explicit set in $html->url()
? It would save a lot of time to not rewrite each URL and add 'plugin' => null
to disable this parameter.
Thanks for your hints!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
cakephp 1.3 有这个问题。你不能为每个插件设置路由器。但在 cakephp 2 中你可以为每个插件 URL 设置路由。
cakephp 1.3 have this problem. you can't set router for each plugin. but in cakephp 2 you can set route for every plugin urls.