使用 laravel 和 blade 为 {{ route(function) }} 和参数正确分配 img src

Properly assign img src with {{ route(function) }} and parameters using laravel and blade

我有一个使用 laravel 的问题,我正在尝试调用一个函数并使用 {{ route }} 方法将一些参数与它一起传递这里的一些东西:

<img src="{{route('cacheImage', ['general', 'mini-logo.png']) }}" /> 

我的 web.php 文件中的路线如下所示:

Route::get('/cache/images', ['uses'=>'HomeController@cache_image','as'=>'cacheImage']);

因此,当页面加载到我的 img src 时,我在这里得到类似的东西:

http://localhost:8000/cache/images?general&mini-logo.png

但这不是我想要的,我想要的是在我的 img src 中有这些内容:

http://localhost:8000/cache/images/general/mini-logo.png

同时我想在我的控制器中调用 cacheImage 函数并向它传递两个参数,即 "general" 和 "mini-logo.png"

我该如何实现?有人可以给我举个例子吗?

将您的路线改为此。

Route::get('/cache/images/{type}/{name}', [
    'uses' => 'HomeController@cache_image',
    'as' => 'cacheImage'
]);

此控制器方法能够接收 url 段作为参数。

public function cache_image($type, $name)
{
    dd($type, $name);
}

然后就可以这样生成链接了

$link = route('cacheImage', ['general', 'mini-logo.png']);
// generates http://example.dev/cache/images/general/mini-logo.png