加载图像忽略路径深度级别

时间:2015-11-11 22:45:26

标签: laravel laravel-4

我想在标题中加载徽标图片。 header.blade.php模板是@include - 主布局中包含所有其他模板(典型结构)。

现在,在标题模板中,我这样做:

<img class="logo" src="{{ $levels }}images/logo.png">

而在每个加载视图(模板)的操作中,我这样做:

$url = explode('/', Request::url());
$levels = '';
for ($i = 1; $i != count($url) - 3; $i ++) {
    $levels .= '../';
}
...
return View::make('whatever.view')
        ->with('levels', $levels);

Ew ......那太可怕了!但它确实有效。

然而,我知道(但无法找到)有一种优雅的方式可以从路线的深度访问/public/images/目录。因为如果我只是<img src="../images/logo.png">这样做,那么它将适用于/account/myprofile路线,但它不适用于/account/{id}/edit ......

不,public_path()在这种情况下无法帮助我。

那么,有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您可以通过在前缀中添加正斜杠来使其相对于根。

<img class="logo" src="/images/logo.png">

以正斜杠开头的网址是root-relative所以无论你在网站的哪个位置,它都是root +&#39; /images/logo.png'。