Laravel:缺少[Route:objets.update]所需的参数

问题描述 投票:0回答:1

我有一个表对象,我想创建一个只有一个字段的表单,用户放入对象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');

第二次没有帮助)

php laravel forms
1个回答
0
投票

对于Route::resource('objets', 'ObjetsController');

更新路线将是

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){}

© www.soinside.com 2019 - 2024. All rights reserved.