我如何使用:
<%=image_tag(url_for(object.image)%>
将图片网址放置在每个对象上
<div class='bg' style="background:url('img.jpg')"></div>
我使用Rails主动存储。我尝试过:
<div "style="background: url(<%=image_tag(@object.image)%>">
,但未渲染图像。这是HTML输出:
<div style="background: url(<img src=" http:="" localhost:3000="" rails="" active_storage="" blobs="" eyjfcmfpbhmionsibwvzc2fnzsi6ikjbahbhdz09iiwizxhwijpudwxslcjwdxiioijibg9ix2lkin19--45640b74829f35f71ed0d53b6c237f5257810f29="" beer_lager_bg.jpg"="">
答案 0 :(得分:1)
对于您的具体情况,您只需要输入:
<div class='bg' style="background: url(<%= url_for(object.image) %>) no-repeat;"></div>
请记住:CSS不是HTML,image_helper将创建一个<img>
标签,而CSS(style="..."
)则不需要它!
但是正确的方法是:
*.css - *.scss
.bg {
/* The image used */ /*accepts a full URL*/
background-image: asset_path(url_for(object.image));}
此处有更多信息:https://api.rubyonrails.org/classes/ActionView/Helpers/AssetUrlHelper.html#method-i-asset_path