Доступ к изображениям внутри общей папки в laravel

Как я могу получить доступ к изображениям, хранящимся в папке public/images без использования собственных функций Laravel, таких как assets()?

Я просто хочу получить прямой URL-адрес изображений, хранящихся в папке с изображениями.

Например:

localhost/webapp/images/stackoverflow.png

При запросе ссылки я должен получить прямой образ.

Ответы

Ответ 1

Если вы находитесь внутри шаблона клинка

{{ URL::to('/') }}/images/stackoverflow.png

Ответ 2

Я создал помощника Asset.

Сначала я определил типы и путь активов в app/config/assets.php:

return array(

    /*
    |--------------------------------------------------------------------------
    | Assets paths
    |--------------------------------------------------------------------------
    |
    | Location of all application assets, relative to the public folder,
    | may be used together with absolute paths or with URLs.
    |
    */

    'images' => '/storage/images',
    'css' => '/assets/css',
    'img' => '/assets/img',
    'js' => '/assets/js'
);

Тогда фактический класс Asset:

class Asset
{
    private static function getUrl($type, $file)
    {
        return URL::to(Config::get('assets.' . $type) . '/' . $file);
    }

    public static function css($file)
    {
        return self::getUrl('css', $file);
    }

    public static function img($file)
    {
        return self::getUrl('img', $file);
    }

    public static function js($file)
    {
        return self::getUrl('js', $file);
    }

}

Поэтому, на мой взгляд, я могу сделать это, чтобы показать изображение:

{{ HTML::image(Asset::img('logo.png'), "My logo")) }}

Или как это реализовать Java-скрипт:

{{ HTML::script(Asset::js('my_script.js')) }}

Ответ 3

Просто разместите свои изображения в общедоступном каталоге (общедоступная/... папка или прямые изображения).
Публичный каталог по умолчанию создается приложением laravel.
Предположим, что я хранил изображения в public/images/myimage.jpg.
Затем в вашем HTML-виде, например: (image.blade.php)

<img src="{{url('/images/myimage.jpg')}}" alt="Image"/>

Ответ 4

когда вы хотите получить доступ к изображениям, находящимся в папке общего доступа/изображений, и если вы хотите получить к нему доступ без использования функций laravel, используйте следующее:

<img src={{url('/images/photo.type')}} width="" height="" alt=""/>

Это прекрасно работает.