2016-03-26 94 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]']) 

就决定{id}路由参数添加到您的更新路线,你在编辑路线做

0

首先改变路线

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

,然后改变形式

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