在Rails 5模板中为内联background-image url添加image_tag

时间:2017-11-30 16:53:23

标签: ruby-on-rails ruby-on-rails-5 ruby-on-rails-5.1

我需要使用样式标记内联设置背景图像,但它需要引用图像对象而不是资源文件夹中的固定图像。以下是我的代码,以显示我正在尝试做的事情。

<div class="background-image-holder" style="background: url(#{" image_path @product.photo_one_url(:original)"}); opacity: 1;">
  <%= image_tag(@product.photo_one_url(:medium)) %>
</div>

1 个答案:

答案 0 :(得分:0)

如果我包含像这样的动态,我总是喜欢使用content_tag,即

<%= content_tag :div, class: "background-image-holder", 
                      style: { background: "url('#{image_path(@product.photo_one_url(:original))}')", 
                               opacity: 1 } do %>
...
<% end >

我觉得它比使用内联erb标签更好 - 个人偏好,但另一种选择。