将 Laravel 5.8 升级到 6.0 后,缺少 [Route] 的必需参数时出错
Error Missing required parameters for [Route] after upgrading Laravel 5.8 to 6.0
将 Laravel 5.8 升级到 6.0 后,出现以下错误:
local.ERROR: Missing required parameters for [Route:
playlist-song.show] [URI: public/admin/playlist-song/{playlist_song}].
{"userId":1,"exception":"[object]
(Illuminate\Routing\Exceptions\UrlGenerationException(code:
0):Missing required parameters for [Route: playlist-song.show] [URI:
public/admin/playlist-song/{playlist_song}].at
/var/www/vendor/laravel/framework/src/Illuminate/Routing/Exceptions/UrlGenerationException.php:17)
Chrome 检查结果:
我已经尝试使用 _
或 -
查找错误并更新路线,但仍然无法解决此错误:
有解决此问题的想法吗?
提前致谢...
===更新
- 我怀疑这里有错误:
$datatables = app('datatables')->of($model)
->addColumn('action', function ($model) {
return "<a href='". route('playlist-song.show', ['id' => $model->id]) ."' class='btn btn-success btn-sm'><i class='fa fa-eye'></i></a>" .
" <a href='". route('playlist-song.edit', ['id' => $model->id]) . "' class='btn btn-primary btn-sm'><i class='fas fa-pencil-alt'></i></a>" .
" <a href='#' onClick='modalDelete(".$model->id.")' class='btn btn-sm btn-danger'><i class='fas fa-trash'></i></a>";
});
- 更新URL如下仍然无法解决问题:
href='". {{ route('playlist-song.show', ['playlist-song' => $model])
}}."'
href="{{ route('playlist-song.show',
['playlist-song' => $model]) }}"
您的错误提示您缺少 playlist_song
参数。您将需要指定它的值。尝试是
$datatables = app('datatables')->of($model)
->addColumn('action', function ($model) {
return "<a href='". route('playlist-song.show', ['playlist_song' => $model->id]) ."' class='btn btn-success btn-sm'><i class='fa fa-eye'></i></a>" .
" <a href='". route('playlist-song.edit', ['playlist_song' => $model->id]) . "' class='btn btn-primary btn-sm'><i class='fas fa-pencil-alt'></i></a>" .
" <a href='#' onClick='modalDelete(".$model->id.")' class='btn btn-sm btn-danger'><i class='fas fa-trash'></i></a>";
});
这指定了参数。如果您仍然遇到问题,请告诉我您的新错误 message/problem 是什么。
您也可以使用以下视图来执行此操作:
$datatables = app('datatables')->of($model)
->addColumn('action', function($model) {
return view('partial.action', compact('model'));
});
在您想要的地方创建您的视图,您可以在其中放入正常的 html 代码,无需连接和任何其他问题
blade 文件:
<a href="{{ route('playlist-song.show', ['id' => $model->id]) }}" class='btn btn-success btn-sm'><i class='fa fa-eye'></i></a>
<a href="{{ route('playlist-song.edit', ['id' => $model->id]) }}" class='btn btn-primary btn-sm'><i class='fas fa-pencil-alt'></i></a>
<a href='#' onClick="modalDelete('{{$model->id}}')" class='btn btn-sm btn-danger'><i class='fas fa-trash'></i></a>
将 Laravel 5.8 升级到 6.0 后,出现以下错误:
local.ERROR: Missing required parameters for [Route: playlist-song.show] [URI: public/admin/playlist-song/{playlist_song}]. {"userId":1,"exception":"[object] (Illuminate\Routing\Exceptions\UrlGenerationException(code: 0):Missing required parameters for [Route: playlist-song.show] [URI: public/admin/playlist-song/{playlist_song}].at /var/www/vendor/laravel/framework/src/Illuminate/Routing/Exceptions/UrlGenerationException.php:17)
Chrome 检查结果:
我已经尝试使用 _
或 -
查找错误并更新路线,但仍然无法解决此错误:
有解决此问题的想法吗?
提前致谢...
===更新
- 我怀疑这里有错误:
$datatables = app('datatables')->of($model)
->addColumn('action', function ($model) {
return "<a href='". route('playlist-song.show', ['id' => $model->id]) ."' class='btn btn-success btn-sm'><i class='fa fa-eye'></i></a>" .
" <a href='". route('playlist-song.edit', ['id' => $model->id]) . "' class='btn btn-primary btn-sm'><i class='fas fa-pencil-alt'></i></a>" .
" <a href='#' onClick='modalDelete(".$model->id.")' class='btn btn-sm btn-danger'><i class='fas fa-trash'></i></a>";
});
- 更新URL如下仍然无法解决问题:
href='". {{ route('playlist-song.show', ['playlist-song' => $model]) }}."'
href="{{ route('playlist-song.show', ['playlist-song' => $model]) }}"
您的错误提示您缺少 playlist_song
参数。您将需要指定它的值。尝试是
$datatables = app('datatables')->of($model)
->addColumn('action', function ($model) {
return "<a href='". route('playlist-song.show', ['playlist_song' => $model->id]) ."' class='btn btn-success btn-sm'><i class='fa fa-eye'></i></a>" .
" <a href='". route('playlist-song.edit', ['playlist_song' => $model->id]) . "' class='btn btn-primary btn-sm'><i class='fas fa-pencil-alt'></i></a>" .
" <a href='#' onClick='modalDelete(".$model->id.")' class='btn btn-sm btn-danger'><i class='fas fa-trash'></i></a>";
});
这指定了参数。如果您仍然遇到问题,请告诉我您的新错误 message/problem 是什么。
您也可以使用以下视图来执行此操作:
$datatables = app('datatables')->of($model)
->addColumn('action', function($model) {
return view('partial.action', compact('model'));
});
在您想要的地方创建您的视图,您可以在其中放入正常的 html 代码,无需连接和任何其他问题
blade 文件:
<a href="{{ route('playlist-song.show', ['id' => $model->id]) }}" class='btn btn-success btn-sm'><i class='fa fa-eye'></i></a>
<a href="{{ route('playlist-song.edit', ['id' => $model->id]) }}" class='btn btn-primary btn-sm'><i class='fas fa-pencil-alt'></i></a>
<a href='#' onClick="modalDelete('{{$model->id}}')" class='btn btn-sm btn-danger'><i class='fas fa-trash'></i></a>