如何在rails中将特定项目的图像添加为背景图像

时间:2016-07-15 19:34:59

标签: html ruby-on-rails

这个让我感到沮丧。我将回形针用于图像,并将它们添加到模型中offer没问题。我的问题是将它们作为背景图像添加到offer的索引页面上所以我的代码看起来像这样:

<div class="product-image"></div>
<style>
.product-image {
     width: 50%;
     height: 200px;
     margin-left: 25%;
     border-radius: 50%;
     background-image: url(<%= image_tag offer.image %>);
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center;
}
</style>

当我在chrome上检查它时,代码如下所示:

background-image: url(<img src="/system/offers/images/000/000/033/original/headphones.jpg?1468610654" alt="Headphones" />);

有人知道修复吗?就像我说的,图像工作正常。如果我只是将一行代码放在<%= image_tag offer.image %>中,则图像显示。非常感谢帮助。

4 个答案:

答案 0 :(得分:1)

您正在使用image_tag帮助程序来创建html标记

您应该使用asset_url helper

asset_url('url for image in your asset folder')

如果您选择在css文件中声明它(在样式表资源中),请不要忘记将其重命名为scss。

答案 1 :(得分:0)

<强> EDITED

如果它不在您的资产路径上,并且image_tag正在运行,为什么不仅使用路径?

background-image: url(<%= offer.image %>);

答案 2 :(得分:0)

您可以在视图中使用此功能

guard

在您的申请助手

<div class="product-image" style="<%= show_user_bg %>"></div>

答案 3 :(得分:0)

试试这个。

background-image: url('<%= offer.image %>');