Laravel - Как передать переменную в контроллер и указать URL-адрес маршрута - PullRequest
1 голос
/ 26 апреля 2020

Мне нужно передать переменную контроллеру сведений о лодке и показать ее в 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.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...