Как установить значок дисплея в зависимости от типа файла - Laravel - PullRequest
0 голосов
/ 21 января 2020

В настоящее время я делаю веб-приложение, которое позволяет пользователям загружать свои файлы. Пока все работает нормально. Меня попросили добавить значок отображения на стороне файла, который был загружен.

Как настроить отображение изображения при загрузке файла определенного типа?

1 Ответ

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

Добавление метода доступа в вашу файловую модель, например;

public function getIconAttribute() {

    $extensions = [
        'jpg' => 'jpeg.png',
        'png' => 'png.png',
        'pdf' => 'pdfdocument.png',
        'doc' => 'wordicon.jpg',
    ];

    return array_get($extensions,$this->extension,'unknown.png');
}

Массив_get - это помощник laravel, который ищет значение в массиве и может иметь третий параметр по умолчанию, если расширение не найден в массиве.

Тогда в блейде вы можете просто значок}} '/>

Или

Более простой подход, когда вы просто убедитесь, что значок назван так же, как и расширение.

Затем в блейде вы можете просто добавить расширение}}. png '/> и тогда вам вообще не нужно добавлять средство доступа.

Это не допускает неизвестных типов файлов, но это может быть нормально, если вы ограничиваете типы загрузки (что вам следует).

...