在CakePHP中有一堆在routes.php
文件中重定向的唯一URL名称。
与此类似:
$beautiful_urls[0] = '/view/location-name/image-name.html';
Router::connect($beautiful_urls[0],
array('controller' => 'Foo','action' => 'bar',3,60));
我想根据美化名称创建facebook like
按钮。为此,我需要在$beautiful_urls
控制器的routes.php
中使用Foo
变量。
如何从控制器到达routes.php中的变量?
到目前为止,我尝试将其与App::use('routes','Config');
链接,但它无效。我还考虑过将值作为动作参数发送,但这似乎不是很好的做法...我知道将配置文件与控制器的逻辑混合起来并不是一个好主意,但到目前为止我还没有更好的想法
答案 0 :(得分:0)
我不是cakephp用户,但简单的搜索显示有一个名为ClassRegistry的类。
您可以创建类BeautifulUrls并将其存储在那里。根据文档,它是单身,它可以从任何地方访问。
此外,您可以使BeautifulUrls实现ArrayAccess接口,这样您就不必更改路径
答案 1 :(得分:0)
我不知道这是不是一个好习惯,但我的解决方案是使用CakePHP的Configure类。在代码和配置文件中的任何地方都可以直接使用和访问。
您可以使用
保存键值对Configure::write('key','value');
并使用
再次阅读Configure::read('key');