2015-06-21 31 views
0

我有以下代碼:如何重定向到一個特定的URL

public function numbergrouppost() { 

       $groupname   = Input::get('groupname'); 
       $no_of_members  = Input::get('no_of_members'); 

       $create  = Group::create([ 
       'group_name'   => $groupname, 
       'no_of_members'  => $no_of_members, 
       'user_id'    => Auth::id()]); 

     return Redirect::route('grouppage'); 

的問題是我怎麼重定向到包含在URL中GROUP_ID(主鍵)的頁面。換句話說,我想重定向到URL看起來像這樣:

「/ grouppage /(編號)」

我可以我的家控制器中創建一個函數,但我將如何訪問$groupname變量(代碼下面)?或者最好是查詢用戶創建的最新組?

public function groupname() { 

$groupbutton = Group::where('user_id', Auth::id())->where('group_name', $groupname)->first(); 

       return View::make('grouppage'); 

路線:

Route::get('/grouppage/{id}', array('as' => 'grouppage', 'uses' => '[email protected]')); 

回答

0

假設$groupId是該組的ID,您可以在路線傳遞變量是這樣的:

return Redirect::route('grouppage', ['id' => $groupId]); 

然後,在你groupname功能,您可以獲取id

public function groupname($id) { 
    // get group by id 
    $groupbutton = Group::where('user_id', Auth::id())->where('id', $id)->first(); 

    // pass the gruoupbutton to the view 
    return View::make('grouppage', ['groupbutton' => $groupbutton]); 
} 
+0

完美謝謝;) – Billy

0

你可以通過參數重定向到您的路線。例如,如果你的組ID是10,你可以嘗試下面的內容。

return Redirect::route('grouppage', array(10)); 

你的情況group_id可以使用$ create-> group_id檢索。

return Redirect::route('grouppage', array($create->group_id)); 

請參閱http://laravel.com/docs/4.2/responses#redirects

+0

我可以傳遞參數好,但我怎麼讓我的網址看起來像'/ grouppage/32' – Billy

+0

Actully我不清楚你在問什麼。但是通過你的代碼,我認爲你要做的是,1.將數據傳遞給numbergrouppost方法。 2.在該方法中創建一個新組。 3.重定向到新創建的組頁面。 所以,我想你想要的是顯示新創建的組的細節?如果是這樣,你的控制器方法應該看起來像groupname($ id),那麼你可以通過Id檢索組,並將數據傳遞給視圖。 – uiroshan

+0

感謝@uiroshan,雖然這是因爲我沒有在變量中存儲'$ create-> group_id'。 – Billy

相關問題