我有一个表对象,我想创建一个只有一个字段的表单,用户放入对象id,并允许它们更新该对象。
我得到的错误是这样的:
Missing required parameters for [Route: objets.update] [URI: objets/{objet}]. (View: D:\Documents\fac18-19\semestre4\Projet\findlost\resources\views\objets\update.blade.php)
我的表格如下:(在views / objets / update.blade.php中)
@extends('template_base')
@section('page')
<br>
<div class="container">
<div id="to-send" class="row">
<!--{{ Form::open(array('url' => '/objID/'))}}-->
{{ Form::open(array('action' => "ObjetsController@update")) }}
<div class="form-group">
{{ Form::label('id','ID de l\'objet :', ['class'=>'control-label']) }}
{{ Form::text('id',null ,array('class' => 'form-control'))}}
</div>
<div class="form-group">
{{ Form::submit('Envoyer', array('class' => 'btn btn-primary'))}}
</div>
{{ Form::close()}}
</div>
</div>
<br>
@endsection
我的更新方法现在是空的,我希望能够将ID作为参数传递,但我也有错误:
public function update(Request $request) //I wanted an $id here
{
//return view("/profile");
}
所以我希望能够在这个表单的帮助下更新一个特定的对象,我做错了什么?
(我有以下路线:
Route::resource('objets', 'ObjetsController');
//Route::post('/objID/{id}', 'ObjetsController@update')->name('obj_id');
第二次没有帮助)
对于Route::resource('objets', 'ObjetsControlle
r');
更新路线将是
objets/{objet}
,所以{{ Form::open(array('action' => "ObjetsController@update")) }}
应该是
{{ Form::open(array('action' => "ObjetsController@update", $objet))) }}
你可能也喜欢{{ Form::open(array('route' => 'objets.update', ['objet' => $objet]))) }}
和
public function update(Request $request){}
应该是public function update(Request $request, Objets $objet){}