![](/img/trans.png)
[英]How to pass a second variable from routes.php to a controller in Laravel 5?
[英]How to use variable from routes.php in controller
在CakePHP中,有一堆唯一的URL名稱在routes.php
文件中重定向。 與此類似:
$beautiful_urls[0] = '/view/location-name/image-name.html';
Router::connect($beautiful_urls[0],
array('controller' => 'Foo','action' => 'bar',3,60));
我想基於美化的名稱創建like
按鈕的facebook。 為了做到這一點,我需要在Foo
控制器的routes.php
中使用$beautiful_urls
變量。
我如何從控制器訪問routes.php中的變量? 到目前為止,我嘗試將其與App::use('routes','Config');
鏈接起來App::use('routes','Config');
但它不起作用。 我還考慮過將值作為動作參數發送,但這似乎不是一個好習慣……我知道將配置文件與控制器的邏輯混合並不是一個好主意,但到目前為止我還沒有更好的主意。
我不是cakephp用戶,但簡單的搜索顯示有一個名為ClassRegistry的類。
您可以創建類BeautifulUrls並將其存儲在此處。 根據文檔,它是單例,並且可以從任何地方訪問。
另外,您可以使BeautifulUrls實現ArrayAccess接口,從而不必更改路由
我不知道這是否是一個好習慣,但是我的解決方案是使用CakePHP的Configure類。 它易於使用,並且可以在代碼和配置文件中的任何位置訪問。
您可以使用
Configure::write('key','value');
並再次閱讀
Configure::read('key');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.