как передать строку по маршруту laravel - PullRequest
1 голос
/ 17 января 2020

$ do c имеет ссылку. например

$doc = /storage/source/logo.jpg

У меня есть такой вид ниже.

<a class="dropdown-item" href="{{url('admin/download/take')}}/{{$doc}}">{{$doc}}</a>

У меня есть этот маршрут ниже

Route::get('download/take/{link})','IncomingController@getGo');

, и это моя функция

    public function getGo(Request $request, $link){
    print_r($link);

}

функция не работает и laravel route не может принять любую строку. как получить строку внутри функции

Ответы [ 3 ]

4 голосов
/ 17 января 2020

Укажите имя (), которое является псевдонимом вашего маршрута.

 Route::get('download/take/{link})','IncomingController@getGo')->name('download.take.link');

измените ссылку привязки, как показано ниже

<a class="dropdown-item" href="{{ route('download.take.link', ['link' => base64_encode($doc)])}}">{{$doc}}</a>

Функция контроллера

 public function getGo(Request $request, $link){
     $link = base64_decode($link);
     print_r($link); // here you will have link you have passed with URL.
 }
0 голосов
/ 17 января 2020

Попробуйте передать его как json строку в URL, а затем в контроллере декодировать его обратно в URL

0 голосов
/ 17 января 2020

Попробуйте это

$doc = /storage/source/logo.jpg ;

<a class="dropdown-item" href="{{ Storage::url($doc) }}">{{$doc}}</a>

, если она не работает, настройте вашу файловую систему в

filesystems.php

 'public' => [
            'driver' => 'local',
            'root' => storage_path('app/public'),
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

здесь 'url' => env('APP_URL').'/storage'

настроить это в соответствии с вашими потребностями

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