URL Generation
Route URL Generation & Extra Parameters
In previous releases of Laravel, passing associative array parameters to the route helper or URL::route method would occasionally use these parameters as URI values when generating URLs for routes, even if the parameter value had no matching key within the route path. Beginning in Laravel 6.0, these values will be attached to the query string instead. For example, consider the following route:
Route::get('/profile/{location}', function ($location = null) {
//
})->name('profile');
// Laravel 5.8: http://example.com/profile/active
echo route('profile', ['status' => 'active']);
// Laravel 6.0: http://example.com/profile?status=active
echo route('profile', ['status' => 'active']);
Взято как ни странно
тут
Собственно так все будет работать
$banner = \App\Banner::find(1);
Route::resource('banners', 'BannerController');
echo route('banners.show', $banner);
$photo = \App\Photo::find(1);
Route::resource('banners.photos', 'BannerPhotosController');
echo route('banners.photos.show', [$banner, $photo]);
Кстати
['name' => 'banners.*']
это лишнее, по дефолту у вас и так будет задано имя указанное первым аргументом