2016-03-26 15 views
1

更新しようとすると、このエラーメッセージが表示されます。私はこれに助けていただければ幸いです!これは私のルートファイルです:Laravel ErrorException-欠落している引数2

Route::get('shelter/articles', ['as' => 'admin.shelter.articles', 'uses' => '[email protected]']); 
Route::get('shelter/article/create', ['as' => 'admin.shelter.article.create', 'uses' => '[email protected]']); 
Route::post('shelter/article/store', ['as' => 'admin.shelter.article.store', 'uses' => '[email protected]']); 
Route::get('shelter/article/edit/{id}', ['as' => 'admin.shelter.article.edit', 'uses' => '[email protected]']); 
Route::put('shelter/article/update', ['as' => 'admin.shelter.article.update', 'uses' => '[email protected]']); 

これは私のコントローラである:

public function update(EditRequest $request, $id){ 

$data=[]; 
$article = Article::findOrFail($id); 
$slug = str_slug($request['name']); 
if($slug!=$article->slug) 
    $data=['slug' => $slug]; 
$article->fill(array_merge($this->fillobject($request), $data)) 
    ->update(); 
if($request->hasFile('upload_files')) 
    $this->fileUpload($request->file('upload_files'), $article->id); 

return Redirect::route('admin.shelter.article.edit',['id'=>$article->id]);} 

そして、これが私の形である:

{!! Form::model($article, ['method' => 'PUT', 'route' => ['admin.shelter.article.update', 'id' => $article->id], 

答えて

1

これを試してみてください:

Route::put('shelter/article/update/{id}', ['as' => 'admin.shelter.article.update', 'uses' => '[email protected]']); 
0

あなたは更新ルートのパラメータを指定していませんでした:

Route::put('shelter/article/update', ['as' => 'admin.shelter.article.update', 'uses' => '[email protected]']) 

エディットルート

0

まず

Route::put('shelter/article/update/{id}', ['as' => 'admin.shelter.article.update', 'uses' => '[email protected]']); 

へのルートを変更して

にフォームを変更で行ったようにちょうどあなたの更新のルートに{ID}ルートのパラメータを追加
{!! Form::model($article, ['method' => 'PUT', 'route' => ['admin.shelter.article.update',$article->id],