如何从表单数据传输到数据库Laravel 5

时间:2015-03-10 18:10:12

标签: php laravel-5

我试图从表单传输数据以覆盖内容数据库。但是得到错误。

这是我的路线,方法和形式。

Route::get('edit/{id}','JokeController@edit');


  public function edit(JokeModerateRequest $request,$id) {

    $joke = Joke::findOrFail($id);

    return view('jokes.edit', [ 'joke' => $joke ]);
}


<form action="/update" method="post">

    <input type="text" value="{{  $joke -> content}}" name="body">

    <input type="submit" value="Save">

    <input type="hidden" name="_token" value="{{ csrf_token() }}">

</form>

但是当我尝试使用下一个路线和方法时

Route::post('update/{id}','JokeController@update');

  function update(JokeModerateRequest $request,$id) 
    $joke = Joke::findOrFail($id);
    $joke->content = $request -> get('content');
    $joke->save();
    return back();

我有下一个错误

Sorry, the page you are looking for could not be found.

1/1
NotFoundHttpException in RouteCollection.php line 145:

1 个答案:

答案 0 :(得分:0)

问题在于:

<form action="/update" method="post">

这将重定向到 / update 路线(您尚未定义),而不是 / update / id 。这两个是不同的路线。

要解决此问题,请将表单的操作更改为:

<form action="/update/{{ $joke->id }}" method="post">