ルートを使用せずにコントローラ内の関数を呼び出すことは可能ですか?セッションが追加された後、特定のページにリダイレクトされる以下の2つのパラメータで新しいルートを作成する必要がありますか?新しいルートまたはajaxでコントローラから関数を呼び出す別の方法は? Laravel 5.2、Ajax
route::get('addsesion/{session-name}/{session slug};
それはAjaxで可能なら、誰かが正しい方向に私を指すしてくださいすることができますか?
基本的には、リンクのajaxを持つコントローラから、addSession($session_name, $slug)
という機能を呼び出して、特定のセッション名と現在のページのスラッグを保存しています。
クリックでこのaddSession
機能を呼び出し、セッションデータを保存してから別のURLにリダイレクトする必要があります。例えば/seeparts
には、保存されたすべてのセッションデータが表示されます。
新しいroute route::get('addsesion/{param1 - session-name}/{param2 - session slug}', [email protected]);
を作成し、そのルートをajax URLとして使用する必要がありますか?または、コントローラの機能を使用する方法は他にありますか?
私の現在のコントローラー:
public function showAll() {
$parts = \DB::table() - > all();
$data = [
'parts' => $parts,
];
return view('partlist', $data);
}
public function showCpu($slug) {
// Specification query
$specs = \DB::table() - > select($select_columns) - > where('slug', $slug) - > first();
$data = [
'specs' => $specs,
'slug' => $slug
];
return view('part', $data);
}
//Add session - call this function
public function addSession($session_name, $slug) {\
Session::put($session_name, $slug);
}
}
part.blade.php:
<html>
@include('head.blade.php')
</body>
//on .add-to-partlist click adds session name that is specified in html and the current slug of the page
<a class="add-to-partlist" href="/seeparts" >Add to partlist</a>
</body>
</html>
他のページ、エラーの場合は、リダイレクトしてエラーを表示しないでください、これは私がuだった場合のことです。 –