2013-05-28 12 views

Odpowiedz

7

Najpierw trzeba utworzyć nazwanych Route jak

Say yo chcesz iść do http://baseurl/user i uruchamia metodę „showuser” zdefiniować w sterowniku „ALLUSERS”

wówczas Route shold wyglądać następująco: -

Route::get('user', array('as' => 'myuser', 'uses' => '[email protected]')); 

teraz Twój adres URL/użytkownik będzie

$myuserurl = URL::to('/myuser'); 
echo $myuserurl; // would be http://baseurl/user 

Mam nadzieję, że to ci pomoże. Pls odnoszą http://laravel.com/docs/routing#named-routes

+0

Czy nie powinien to być "URL :: to (" myuser '); 'ponieważ wywoływałoby to nazwę trasy, aby dowiedzieć się, gdzie linkować, a nie link bezpośrednio do trasy? Jeśli jest to 'URL :: to ('/ myuser')', uważam, że trasa powinna być 'Route :: get ('/ myuser', array ('as' => 'myuser', 'uses' => 'allusers @showuser ')); ' – user1669496

+0

Możesz zdefiniować trasę bez wiodącego ukośnika (/) i możesz użyć bezpośrednio URL :: Route, aby uzyskać nazwany URL trasy jako: - Route :: get (' myuser ', array (" as ") => 'myuser', 'uses' => 'allusers @ showuser')); Użycie - URL :: route ("myuser", array()) –

+0

Rewizja, ponieważ odpowiedź jest myląca. URL :: to() nie prowadzi do wyznaczonej trasy ani nie generuje względnego adresu URL. – sebt

19

Aby wygenerować względną URL, można użyć URL::route lub URL::action ponieważ pozwalają przekazać parametr, który domyślnie true$absolute. Tak aby uzyskać względny adres URL przy użyciu nazwanych tras na przykład, można użyć następujących:

URL::route('foobar', array(), false) 

To wygeneruje URL podobnego /foobar.

+0

To jest najbliżej bycia poprawną odpowiedzią na pytanie. URL :: route() generuje adres URL do nazwanej trasy, a ostatni parametr "false" określa, że ​​wygenerowana trasa jest względna. Dla jasności wygenerowany URL będzie tym, który zdefiniowana trasa zdefiniowana i niekoniecznie '/ foobar' – sebt