2016-11-16 10 views
1

別ルートの関数に関数からデータを渡す:現時点でLaravel - 現在のセットアップ

、ユーザーはポストルートを呼び出し、その検索することができます。検索結果に基づいてさまざまなものを返します。search.results URLにplace/townと表示されています。

latlngの変数をsearchの関数をshowResults関数に渡すにはどうすればよいですか。私はの現在の配列にnullを返す->with()を試しましたが、それらはURLに含まれています。

ルート:

Route::post('search', '[email protected]')->name('search'); 
Route::get('{place}/{town}', '[email protected]')->name('search.results'); 

コントローラー:

検索機能:(現時点で空)

public function search(Request $request) 
{ 
    $place =$request->get('name'); 
    $lat = $request->get('lat'); 
    $lng = $request->get('lng'); 

    return redirect()->route('search.results', [$place, $town]); 
} 

showResults機能:

public function showResults() 
{ 
    // I want to use lat and lng here. 
} 

答えて

1

Laravel Sessionを使用する必要があります。

return redirect() 
    ->route('search.results', [$place, $town]) 
    ->with('lng', $lng) 
    ->with('lat', $lat); 

そして、あなたのfonctionで

public function showResults(Request $request) 
{ 
    $lat = $request->session()->get('lat'); 
    $lng = $request->session()->get('lng'); 
} 
+0

私は非常に近かったです!ありがとうございました。 -1.5490773999999874 "'これは 'search'関数内の変数を' dd() 'したときに表示されますが、' showResults'に 'null'を返します。 。経度は完璧ですか? – Ben

+0

どのように2つの変数を送信しますか? ( 'lat'、$ lat) - >( 'lng'、$ lng); ' – Roadirsh

+0

Multiple' - > with() 'のように、複数の' with 'をチェーンすることができます。ご協力ありがとうございました! – Ben

関連する問題