Скрытые файлов в public laravel 5

119
22 апреля 2021, 04:30

Есть папки с изображениями, путь к ним таков "site.com/1/thumbnail.png", проблема в том что число в url это id пользователя и надо сделать так что бы только например админ имел доступ к этим фото, еще одна проблема путь к изображению нежелательно сохранять в базу, middleware и storage писал, ничего не вышло

Answer 1

Я сам нашел решение через storage может поможет кому то

Функция рендера изображения

    public function getUserPhoto($user, $filename)
{
    $path = storage_path('app/public/uploads/'. $user. '/' . $filename);
    if(!Storage::disk('public')->exists('uploads/'.$user.'/'.$filename)) {
        abort(404);
    }
    return response()->file($path);
}

А вот роут

Route::get('/storage/{id}/{filename}', 'UsersController@getUserPhoto')->name('get.user.photo');

Ну и сам рендер на вюхе

<img src="{{ route('get.user.photo', [$user->id, 'thumbnail.jpeg'])}}">
READ ALSO
Как убрать галочку &ldquo;Use androidx.* artifacts&rdquo; в Android Studio 3.4.2?

Как убрать галочку “Use androidx.* artifacts” в Android Studio 3.4.2?

В старых версиях Android Studio был флажок "Backwards Compatibility", в Android Studio 34

93
Как распарсить данный объект на java?

Как распарсить данный объект на java?

Существует вот такой json

116
VK API Получение сообщений

VK API Получение сообщений

Как вывести список сообщений в вкОбщался с поддержкой дали доступ к сообщениям, пытаюсь вывести сообщение но ничего не происходит

103