2013-10-10 105 views
0

我使用laravel4表單我的應用程序,用戶可以在其中存儲一些數據與表單後數據庫。當我發佈空白表單時,出現錯誤NotFoundHttpException。 我在HomeController的laravel4表單驗證錯誤

public function create() 
{ 
    $validation = Producer::validate(Input::all()); 

    if ($validation->fails()) { 
     return Redirect::to('home/create')->withErrors($validation->errors()); 
    } else { 




     $producer = new Producer; 
     $producer->title = Input::get('title'); 
     $producer->body = Input::get('body'); 
     $producer->url = Input::get('url'); 

     $producer->save(); 

     return Redirect::to('/'); 
    } 
} 

模型

class Producer extends Eloquent { 

public static $rules = array(
    'title'=>'required|min:5', 
    'body'=>'required|min:10', 
    'url' => 'required' 
); 

public static function validate($data) { 
    return Validator::make($data, static::$rules); 
} 

,並查看

@if($errors->has()) 
    <ul> 
    {{ $errors->first('title', '<li>:message</li>') }} 
    {{ $errors->first('body', '<li>:message</li>') }} 
    {{ $errors->first('url', '<li>:message</li>') }} 
    </ul> 
@endif 
    {{ Form::open(array('url' => 'create')) }} 
    <p>{{ Form::label('title', 'Název služby') }}</p> 
    <p>{{ Form::text('title') }}</p> 
    <p>{{ Form::label('body', 'Popis') }}</p> 
    <p>{{ Form::textarea('body') }}</p> 
    <p>{{ Form::label('url', 'Adresa webu') }}</p> 
    <p>{{ Form::textarea('url') }}</p> 
    <p>{{ Form::submit('Přidat',array('class' => 'btn btn-default')) }}</p> 
    {{ Form::close() }} 

但是當我運行此腳本我得到錯誤NotFoundHttpException。我的代碼在路由中的problim在哪裏?

我的路線

Route::get('/', '[email protected]'); 

Route::get('/detail/{id}', '[email protected]'); 

Route::get('/add', '[email protected]'); 

Route::post('/create', '[email protected]'); 

現在我有

Route::get('/', '[email protected]'); 

Route::get('/detail/{id}', '[email protected]'); 

Route::get('/add', '[email protected]'); 

Route::post('/create', '[email protected]'); 

Route::get('/create', '[email protected]'); 

if ($validation->fails()) { 
    return Redirect::to('/create')->withErrors($validation); 
} else { 

的還是同樣的問題

解決我已經鑄成大錯我重定向到壞擊潰我需要我們e HomeController @ add,因爲這使得視圖的形式

+0

你能張貼從routes.php –

回答

1

路線home/create不存在。檢查你的路線,它應該是/create。另一個問題,你需要一個處理get的路線create。目前你只有一個帖子。

+0

相關路線如果我只是通過驗證,產生相同的錯誤,我認爲問題是在我的路線 – mardon

+0

更新了我的答案。 –