web-dev-qa-db-ja.com

Laravel:名前からルートからURLを取得

私は少し違うことをしようとしていますが、それを行う方法を見つけることができませんでした。私のアプローチは間違っているかもしれませんが、いずれにせよ、ここでいくつかの助けを見つけるかもしれません。

Laravel 5プロジェクトがあり、以下を使用して現在のルート名を取得する方法を知っています。

\Request::route()->getName();

だから、私は実際に正反対を行うことを探しています。正反対ではないかもしれませんが、必要なのは、そのルートに付けた名前に基づいてルートURLを取得することです。これが私の夢のシナリオです。

俺の routes.php:

Route::any('/hos', "HospitalController@index")->name("hospital");

私がやりたい私のコントローラーで、どうすればいいのか、それが可能かどうかさえわからない:

// I have no idea if this is possible but thats what I'm trying to accomplish
$my_route_url = \Request::route()->getURLByName("hospital");

echo $my_route_url; // this would echo: "/hos"

私はここで間違ったアプローチを使用している可能性があります。

ありがとう!

15
brunomayerc

$url = route('routeName');

パラメータがある場合

$url = route('routeName', ['id' => 1]);

https://laravel.com/docs/5.1/helpers#method-route

26
David Nguyen

あなたはweb.phpファイルでルートを指定されたものに変更しようとしていると思います

Route::get('anyroute', array('as' => 'newname', function() {
    $url = route('new_name');
    return "This is the $url";    
}));
0
Yusuf Ali