2016-02-04 96 views
2

我是新來laravel.Here我創造的laravel.I一個基本的表單驗證頁面正在使用REST風格的控制器執行CRUD action.Here我創建了一個重定向到::()不重定向應用到特定的控制器資源

taskController controller. 

在我看來/ taskController目錄中,我有以下幾頁

1.create.blade.php

2.store.blade.php

3.index.blade.php

我在taskController/create resource.My計劃形式每當我提交表單,如果驗證成功後會重定向我taskController/store page.Otherwise會送我回去到taskController/create帶有驗證錯誤的頁面。但是,在成功或失敗時,我無法將我的應用程序重定向到我的任何頁面。 也沒有錯誤。爲什麼發生這種情況,我該如何解決這個問題?

這是我taskController頁的存儲()方法:

public function store(Request $request) 
{ 
     // 
     $rules = array(

      'email' => 'required|email',  // required and must be unique in the ducks table 
      'comment' => 'required', 
      'agree' => 'required|accepted'   // required and has to match the password field 
    ); 
     $validator = Validator::make(Input::all(), $rules); 
     if ($validator->fails()) { 

     // get the error messages from the validator 
      $messages = $validator->messages(); 


     return Redirect::to('taskController/create');// not working 


     }else{ 
     return Redirect::to('taskController/store'); // not working 

     } 
    } 
+0

這版本你在嗎? –

+0

我正在使用5.2。 –

+0

你試過我的回答嗎? –

回答

0

試試這個代碼

return redirect('taskController/create'); 
+0

結果保持不變.... –

+0

嘗試'返回視圖('taskController /創建');' – paranoid

+0

我試過用View :: make()之前..它工作..實際上我想知道爲什麼重定向::到()不工作..它只是爲了學習的目的.. :) –

0

我想航線行動store方法永遠不會,只要它是一個資源控制器。如果控制器不是資源,並且請求是Get那麼是的,你可以重定向。

如果您對Laravel 5.2可以重定向到一個控制器方法類似

return redirect()->action('taskController/store') 

Laravel Redirect Docs

+0

你能澄清一件事是否會轉到resource/views/taskController/store目錄下的文件,或者它只會調用taskController.php頁面內的store()方法? –

+0

那麼你的控制器在哪裏? –

+0

它在app/http/controllers目錄下 –

0

你在上面輸入重定向功能,希望使用Use Redirect;這應該有助於

+0

是的,我使用的開始 –

+0

你沒有重定向的命名空間規範,沒有得到任何錯誤?返回重定向() - >行動('taskController @店')試過? –

+0

我不想訪問我的taskController控制器內的商店方法,而是我想訪問taskController子文件夾下的「資源/視圖/任務控制器/ store.blade」下的名爲store.blade.php的頁面 –