2015-12-28 69 views
1

我剛開始使用laravel,目前使用的是5.2版本。 我使用兩種形式來獲取數據。第一種形式的第一種形式和第二種形式的第二種形式。我需要找出一種方法來告訴第二種形式,即第一種形式的表格ID,第二種形式將鏈接到這種形式。將值從一個視圖傳遞到其他laravel路由配置

我知道這可以通過使用URL傳遞值來完成。但我缺乏正確語法的知識。

1-如何在重定向時發送數據?

2-路線應該如何?

3-如何訪問第二個視圖中的值,以便在第二個表單提交時傳遞該值?

我對此有很多瞭解,但無法理解這些高級語法。 任何幫助表示讚賞。

在此先感謝。

這是在控制器代碼:

public function postCreateProfile(Request $request){ 
    //Adding attributes from $request to $profile 
    $profile->save(); 
    Session::flash('values',$request->azauj_id); 

    return redirect('/add/requirement'); 

} 

public function getCreateRequirement(Request $request){ 
    $att = Session::get('value'); 
    Session::flash('value',$att); 
    return view('req'); 
} 

public function postCreateRequirement(Request $request){ 
    dd(Session::get('value')); 
} 

形式是純HTML的形式提交與的 方法後當我使用dd(Session::get('value'));,我得到空。這意味着該值沒有被傳遞。在提交第二個表單時調用的postCreateRequirement方法。

以下是路線。

//For Add Profile Page 
Route::get('/add', '[email protected]'); 
//For Add Profile Form Submission 
Route::post('/add', '[email protected]'); 
//For Add Requirements Page 
Route::get('/add/requirement', '[email protected]'); 
//For Add Requirements Form Submission 
Route::post('/add/requirement', '[email protected]'); 
+0

問題太多,無碼滿臉通紅,請參閱:https:/ /laravel.com/docs/5.2小心第一 –

+0

顯示您的表單代碼 –

回答

2

1-如何在重定向時發送數據?

你可以簡單地傳遞與使用->with()方法,它創建一個會話您重定向數據纔會出現下一個頁面更here

例如在: 說你想下來發送狀態到您的視圖您與您重定向添加:

  // Where you are redirecting to 
redirect("/otherRoute")->with("status", "Profile updated!"); 
           // session name // data 

現在您只需檢查是否存在會話和echo出來:

// If the session does not exist it will return false and not create it 
@if (session("status")) 
    <div class="alert alert-success"> 
     // echo out the session 
     {{ session("status") }} 
    </div> 
@endif 

2-路線應該如何?

路線應在位於HTTP目錄中的routes.php文件文件中定義假設您發佈的數據,你應該做的路由,並連接到您的控制器像這樣:

//For Add Profile Page 
Route::get('/add', '[email protected]'); 
//For Add Profile Form Submission 
Route::post('/add', '[email protected]'); 
//For Add Requirements Page 
Route::get('/add/requirement', '[email protected]'); 
//For Add Requirements Form Submission 
Route::post('/add/requirement', '[email protected]'); 

3-如何在第二個視圖中訪問該值,以便在第二個表單提交時傳遞該值?

你可以簡單地使用->with()方法在您的重定向

public function postCreateProfile(Request $request){ 
    //Adding attributes from $request to $profile 
    $profile->save(); 

    return redirect('/add/requirement')->with("value",$request->azauj_id); 
} 

獲取價值

public function getCreateRequirement(Request $request){ 
    $value = session("value"); 

    // compact it and trow it in an input to pass it trough to the last controller method 
    return view('req'); 
} 

public function postCreateRequirement(Request $request){ 
    $request->get("value"); 
} 

OR 創建一個全球性的會議,並隨後進行沖洗

public function postCreateProfile(Request $request){ 
    //Adding attributes from $request to $profile 
    $profile->save(); 

    session("value",$request->azauj_id); 
    return redirect('/add/requirement'); 
} 

獲得價值

public function getCreateRequirement(Request $request){ 
    return view('req'); 
} 

public function postCreateRequirement(Request $request){ 
    $value = session("value"); 
    $request->session()->forget("value"); 
} 

注:Laravel不沖水會話時,有人爲註銷這些將保持如果不用手或使用該方法$request->session()->flush();

+0

非常感謝。這真的有幫助。非常感謝你提供了這樣一個描述性和信息豐富的答案。 – alimaqsood

相關問題