Мне нужно передать переменную контроллеру сведений о лодке и показать ее в URL.
Это представление с блейдом, где я загружаю список доступных лодок:
@foreach($Boats as $boat)
<article class="box">
<figure class="col-sm-4">
<a title="" href="{{asset('frontend')}}/ajax/cruise-slideshow-popup.html" class="hover-effect popup-gallery"><img width="270" height="160" alt="" src="{{ json_decode($boat->images, true)['url']}}"></a>
</figure>
<div class="details col-sm-8">
<div class="clearfix">
<h4 class="box-title pull-left">{{$boat->name}}<small>{{$boat->id}}</small></h4>
<span class="price pull-right"><small>from</small>$239</span>
</div>
<div class="character clearfix">
<div class="col-xs-3 cruise-logo">
<img src="http://placehold.it/110x25" alt="" />
</div>
<div class="col-xs-4 date">
<i class="soap-icon-clock yellow-color"></i>
<div>
<span class="skin-color">Date</span><br>{{$boat->year}}
</div>
</div>
<div class="col-xs-5 departure">
<i class="soap-icon-departure yellow-color"></i>
<div>
<span class="skin-color">Departure</span><br>{{$boat->homeBase}}
</div>
</div>
</div>
<div class="clearfix">
<div class="review pull-left">
<div class="five-stars-container">
<span class="five-stars" style="width: 60%;"></span>
</div>
<span>270 reviews</span>
</div>
<a href="{{ LaravelLocalization::getLocalizedURL(null, trans('routes.detailedBoat'),['id' => $boat->id]) }}" class="button btn-small pull-right">select cruise</a>
</div>
</div>
</article>
@endforeach
Это маршрут маршрута. php файл для перевода URL:
return [
"login" => "login",
"register" => "register",
"listBoats" => "boats",
"contact" => "contact",
"detailedBoat" => "DetailBoat/{id}",
];
web. php:
Route::get(LaravelLocalization::transRoute('routes.detailedBoat'),('DetailedBoat'), function (\App\Boat $id) {
return $id;
});
DetailsBoat Controller:
public function __invoke($id)
{
echo $id;
return view('frontendViews.detailedBoat');
}
Результат должен быть
http://localhost:8000/en/boats/{id}
Странно то, что маршруты отлично работают на основе app. php настройка 'locale', если у меня есть 'en', я получаю http://localhost: 8000 / en / DetailBoat / 1 `и http://booking: 8888 / it / DettaglioBarca / % 7Bid% 7D переключение языка; Viceversa, если есть ['it'] в приложении. php Я получаю http://booking: 8888 / it / DettaglioBarca / 1 и http://booking: 8888 / en / DetailBoat /% 7Bid% 7D на английском sh.
Спасибо