我在laravel 4.2中接受了这个错误。*
Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException
我正在更新记录。
//路由
Route::get('projects/edit/{slug}', array('as' => 'projects.edit', 'uses' => 'ProjectsController@edit'));
Route::put('projects/update?{slug}', array('as' => 'projects.update', 'uses' => 'ProjectsController@update'));
//控制器
public function update($slug){
$pr = $this->project->whereSlug($slug)->first();
$this->project->fill(Input::all());
$this->project->save();
}
//表单
{{ Form::model($project, ['method' => 'PATCH', 'route' => ['projects.update', project->slug ],'files' => true]) }}
{{ Form::close() }}
//网址
pms2.dev/projects/update?slug
希望有人知道,为什么我要面对这个。
答案 0 :(得分:0)
由于您的表单方法设置为PATCH
,因此您的路由也应使用相同的动词定义。
Route::patch('projects/update?{slug}', array('as' => 'projects.update', 'uses' => 'ProjectsController@update'));
http://laravel.com/api/4.2/Illuminate/Routing/Router.html#method_patch
但是我认为POST是更合适的方法。
答案 1 :(得分:0)
尝试按照以下
替换您的路由Route::patch('projects/update', array('as' => 'projects.update', 'uses' => 'ProjectsController@update'));