【发布时间】:2014-11-14 15:27:13
【问题描述】:
我的一个服务提供商有这条线:
\View::addNamespace('foo', asset('/bar'));
但未使用以下行在我的 Blade 模板上呈现:
{{ HTML::image("foo::img.".$image, "Image") }}
它没有呈现上面的行,而是显示文字“foo::img.animagesomwwhereinmysite.png”。有没有办法让这成为可能?
【问题讨论】:
我的一个服务提供商有这条线:
\View::addNamespace('foo', asset('/bar'));
但未使用以下行在我的 Blade 模板上呈现:
{{ HTML::image("foo::img.".$image, "Image") }}
它没有呈现上面的行,而是显示文字“foo::img.animagesomwwhereinmysite.png”。有没有办法让这成为可能?
【问题讨论】:
View::addNamespace 只告诉您的服务提供商您存储视图的特定位置;该声明本身不会将任何内容传递给视图。 (见docs。)
因此,当您调用辅助函数{{ HTML::image() }} 时,它的第一个参数是图像的URL。在您的情况下,您将 URL 指定为文字字符串“foo::img.imagename”。
假设您的图像在目录foo/img/ 中,这应该可以工作:
{{ HTML::image("foo/img/".$image, "Image") }}
【讨论】: