• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

UrlGenerationException:缺少必需的参数[路线:topics.update] [URI:主题/ {}话题]

laravel 来源:Deepak Rawat 19次浏览

我得到这个错误:UrlGenerationException:缺少必需的参数[路线:topics.update] [URI:主题/ {}话题]

Missing required parameters for [Route: topics.update] [URI: topics/{topic}]. (View: C:\xampp\htdocs\phpboards\resources\views\topics\edit.blade.php) 

这是链接,将采取用户编辑:

<a href="/boards/topics/edit/{{$topic->id}}" class="btn btn-default">Edit</a> 

这是编辑控制器:

$topic = Topic::find($id); 
return view('topics.edit')->with('topic', $topic); 

这是路线:

Route::get('/boards/topics/edit/{id}', '[email protected]'); 

这是编辑的形式:

<div class="container"> 
    {!! Form::open(['action' => '[email protected]', 'method' => 'POST']) !!} 
     <div class="form-group"> 
      {{ Form::label('title', 'Title') }} 
      {{ Form::text('title', $topic->topic_title, ['class' => 'form-control', 'placeholder' => 'Title of the Post']) }} 
     </div> 
     <div class="form-group"> 
      {{ Form::label('desc', 'Desc') }} 
      {{ Form::textarea('desc', $topic->topic_body, ['class' => 'form-control', 'placeholder' => 'Description of the Post']) }} 
     </div> 
     {{ Form::submit('Submit', ['class' => 'btn btn-default']) }} 
    {!! Form::close() !!} 
</div> 

我做了什么错在这里?


===========解决方案如下:

相反的:

{!! Form::open(['action' => '[email protected]', 'method' => 'POST']) !!} 

使用

{!! Form::open(['url' => route('topics.update', $topic->id), 'method' => 'POST']) !!} 

,因为你的路线,你需要传递要更新的话题ID。此外,使用named routes代替Controller @ method表示法更合理。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)