2013-10-10 106 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

更新了我的答案。 –