Ruby rails link_to 资产中的图像
Ruby on rails link_to an image in assets
我敢肯定有很多 post 像这样,但是在检查它们之后我没有找到任何人来回答我的问题。
我正在尝试使用 link_to
获取位于 "app/assets/images/levers/I.a.1.png"
的图像,如下所示:
<%= link_to("Biomasa", image_path("levers/I.a.1.png"), :target => "_new") %>
无论我尝试了多少次不同的路径组合,它都不起作用。我收到此错误:
The asset "levers/I.a.1.png" is not present in the asset pipeline.
我遗漏了什么或做错了什么?
更多信息
我不确定这是否重要,但我正在使用 "Bash on Ubuntu on Windows" 使我的 windows 10(在工作中)成为可能。
将此配置添加到您的 application.rb
以将 app/assets/images
中的文件包含到资产管道中
config.assets.paths << Rails.root.join("app", "assets", "images", "levers")
然后,在您的 rails 视图中,您可以将 link_to
与 asset_path
一起使用
<%= link_to root_path, :target => "_blank" do %>
<%= image_tag asset_path("I.a.1.png") %>
<% end %>
您可以将块传递给 link_to
。试试这个:
<% link_to('/wherever/you/want/to/link-to', :target => '_new') do %>
<%= image_tag('I.a.1.png', alt: 'Biomasa') %>
<% end %>
图像标记应自动查找 app/assets/images
,因此这将添加路径的其余部分。
将此添加到 config/initializers/assets.rb
Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
Rails.application.config.assets.paths << path
end
你应该可以开始了。
我终于解决了这个问题。问题是在我的图像扩展中区分大小写。它是 .PNG
,我正在尝试 .png
我敢肯定有很多 post 像这样,但是在检查它们之后我没有找到任何人来回答我的问题。
我正在尝试使用 link_to
获取位于 "app/assets/images/levers/I.a.1.png"
的图像,如下所示:
<%= link_to("Biomasa", image_path("levers/I.a.1.png"), :target => "_new") %>
无论我尝试了多少次不同的路径组合,它都不起作用。我收到此错误:
The asset "levers/I.a.1.png" is not present in the asset pipeline.
我遗漏了什么或做错了什么?
更多信息
我不确定这是否重要,但我正在使用 "Bash on Ubuntu on Windows" 使我的 windows 10(在工作中)成为可能。
将此配置添加到您的 application.rb
以将 app/assets/images
中的文件包含到资产管道中
config.assets.paths << Rails.root.join("app", "assets", "images", "levers")
然后,在您的 rails 视图中,您可以将 link_to
与 asset_path
<%= link_to root_path, :target => "_blank" do %>
<%= image_tag asset_path("I.a.1.png") %>
<% end %>
您可以将块传递给 link_to
。试试这个:
<% link_to('/wherever/you/want/to/link-to', :target => '_new') do %>
<%= image_tag('I.a.1.png', alt: 'Biomasa') %>
<% end %>
图像标记应自动查找 app/assets/images
,因此这将添加路径的其余部分。
将此添加到 config/initializers/assets.rb
Dir.glob("#{Rails.root}/app/assets/images/**/").each do |path|
Rails.application.config.assets.paths << path
end
你应该可以开始了。
我终于解决了这个问题。问题是在我的图像扩展中区分大小写。它是 .PNG
,我正在尝试 .png