在 Rails 应用中引用图像(Heroku 部署)
Referencing images in a Rails app (Heroku deployment)
我目前在 Rails 应用程序中引用图像时遇到了一个小问题,该应用程序随后被部署到 Heroku。
我在与应用程序相关的以下路径中有一张图片:
app/assets/images/some-image.png
而且我在 HTML 中正确引用了它(据我所知):
<div id="main-nav" class="collapse navbar-collapse">
<img src="/assets/some-image.png" height="67"/><!-- **IMAGE SOURCE LINK** -->
<ul class="nav navbar-nav" id="mainNav">
<li class="active"><a href="#home" class="scroll-link">Home</a></li>
<li><a href="#introText" class="scroll-link">APR</a></li>
<li><a href="#initiatives" class="scroll-link">Initiatives</a></li>
</ul>
</div>
然而,这是显示的内容:
有人知道为什么会这样吗?
你应该使用 image_tag
:
<%= image_tag "some-image.png", height: "67" %>
当您部署到 heroku 时,您的资产将使用唯一的摘要进行编译,因此您无法对 /assets/some-image.png
的引用进行硬编码。查看“Rails Asset Pipeline on Heroku Cedar”。
您将需要使用一些辅助函数来正确解析图像路径,例如 image_path('my_image.png')
。参见“ActionView::Helpers::AssetTagHelper" or "Asset Tag Helpers”。
我目前在 Rails 应用程序中引用图像时遇到了一个小问题,该应用程序随后被部署到 Heroku。
我在与应用程序相关的以下路径中有一张图片:
app/assets/images/some-image.png
而且我在 HTML 中正确引用了它(据我所知):
<div id="main-nav" class="collapse navbar-collapse">
<img src="/assets/some-image.png" height="67"/><!-- **IMAGE SOURCE LINK** -->
<ul class="nav navbar-nav" id="mainNav">
<li class="active"><a href="#home" class="scroll-link">Home</a></li>
<li><a href="#introText" class="scroll-link">APR</a></li>
<li><a href="#initiatives" class="scroll-link">Initiatives</a></li>
</ul>
</div>
然而,这是显示的内容:
有人知道为什么会这样吗?
你应该使用 image_tag
:
<%= image_tag "some-image.png", height: "67" %>
当您部署到 heroku 时,您的资产将使用唯一的摘要进行编译,因此您无法对 /assets/some-image.png
的引用进行硬编码。查看“Rails Asset Pipeline on Heroku Cedar”。
您将需要使用一些辅助函数来正确解析图像路径,例如 image_path('my_image.png')
。参见“ActionView::Helpers::AssetTagHelper" or "Asset Tag Helpers”。