2017-01-10 57 views
1

我想我的名字路由,以便我可以很容易地生成URL,而不是使用中,我必須輸入自己的網址助手功能。Laravel命名爲routing |自動生成的URL,以最佳匹配

我這樣做:

Route::get('logout', '[email protected]')->name('pc'); 

當我做PHP工匠路線:列表我沒有得到這個命名的路由,而不是名稱列是空的。

我想那是什麼,不管我的意見通過這個控制器目標。我想要這樣生成他們的網址。

route('pc.logout') OR route('pc.some_other_action') 

所以即使我改變動詞從URL地址訪問這個控制器,我不必改變我的url生成器。這在Laravel中甚至可能嗎?還請告訴如何爲資源路線執行此操作。

我使用Laravel 5.3。

感謝。

編輯:第二天,2017年1月11日

我所期待的是,像ASP.NET MVC的路由,如果我告訴它來生成與給定的控制器和操作的網址,就會產生可能的路徑不管用於命名路線的動詞或字符串如何。

例如

如果我作出這樣

route('users.index') 

輸出/用戶

一個網址,但如果我改變字符串名用戶U,而不是給我錯誤名「用戶」不存在,它應該自動生成一個URL輸出是這樣的:

輸出:/u

這是ASP.NET MVC路由系統的一部分,我也期待在這裏看到這個。

+0

路線::得到( '註銷',陣列( '使用'=> '的PageController @註銷', '爲'=> 'PC'));像這樣嘗試。 – Sona

回答

1

你應該寫這這將解決您的問題

Route::get('logout', array('as' =>'pc.logout' ,'uses' => '[email protected]')); 

這可能會解決你的問題

+0

更新了我的問題 – Waleed

0
name('pc.logout') OR name('pc.some_other_action') 

你可以試試這個。

它是用更簡單的方法:

Route::get('logout', '[email protected]')->name('pc.logout'); 

或者這樣:

Route::get('logout', '[email protected]')->name('pc.some_other_action'); 

你能進一步解釋,如果這是錯誤的。

0

嘗試這種情況:

<?php 
Route::get('logout',[ 
    'uses'=>'[email protected]', 
    'as'=>'pc.logout'      
]);