Html 对css/rails中的多个背景图像使用PG db到的图像URL
我正在尝试更改div的background image属性,使之等于rails应用程序中PG db的url HTML.ERBHtml 对css/rails中的多个背景图像使用PG db到的图像URL,html,css,ruby-on-rails,Html,Css,Ruby On Rails,我正在尝试更改div的background image属性,使之等于rails应用程序中PG db的url HTML.ERB <div class="blogBody hCenterBlock"> <% @item.each do |i| %> <div class="newsItem"> <div class="section group blogTitle"> <div class="col col
<div class="blogBody hCenterBlock">
<% @item.each do |i| %>
<div class="newsItem">
<div class="section group blogTitle">
<div class="col col12">
<h2 class="newsTitle">
<%= i.title %>
</h2>
</div>
</div>
<div class="section group blogItem">
<%= link_to(i.url,:class => "fancybox fancybox.iframe", 'data-thumbnail' => "#{i.image.thumb.url}", :rel => "gallery", :title => "#{i.title}") do %>
<div class="col7 col blogImage">
<div class="newsImg"></div>
</div>
<% end %>
<div class="col5 col blogDescript">
<p><%= i.description %></p>
</div>
</div>
</div>
<% end %>
非常感谢您的帮助!再次感谢您抽出时间 简而言之,您将无法从数据库中填充CSS(静态);您需要使用内嵌样式(在视图/布局中):
这样做的明显问题是,每次发送请求时,它都会启动一个db调用。最好的解决方法是使用条件调用,或者使用存储值 这对我有效,但我必须使用缓存
<div class="blogBody hCenterBlock">
<% @item.each do |i| %>
<% @bg_image = i.image.url %>
<div class="newsItem">
<div class="section group blogTitle">
<div class="col col12">
<h2 class="newsTitle">
<%= i.title %>
</h2>
</div>
</div>
<div class="section group blogItem">
<%= link_to(i.url,:class => "fancybox fancybox.iframe", 'data-thumbnail' => "#{i.image.thumb.url}", :rel => "gallery", :title => "#{i.title}") do %>
<div class="col7 col blogImage" style="background: url(<%= i.image.url %>)"></div>
<% end %>
<div class="col5 col blogDescript">
<p>
<%= i.description %>
</p>
</div>
</div>
</div>
<% end %>
</div>
“fancybox fancybox.iframe”、“数据缩略图”=>“#{i.image.thumb.url}”、:rel=>“gallery”、:title=>“#{i.title}”)do%>
我将内联样式更改为:
<div class="col7 col blogImage" style="background: url(<%= i.image.url %>)"></div>
谢谢你的帮助 因此,如果我有一个包含20个不同项目的列表,每个项目都有自己的不同图像,rails如何知道哪个@bg_图像与正确的@item匹配?
#app/controllers/application_controller.rb
class ApplicationController < ActionController::Base
before_action :set_bg
private
def set_bg
@bg_image = ....
end
end
<div class="blogBody hCenterBlock">
<% @item.each do |i| %>
<% @bg_image = i.image.url %>
<div class="newsItem">
<div class="section group blogTitle">
<div class="col col12">
<h2 class="newsTitle">
<%= i.title %>
</h2>
</div>
</div>
<div class="section group blogItem">
<%= link_to(i.url,:class => "fancybox fancybox.iframe", 'data-thumbnail' => "#{i.image.thumb.url}", :rel => "gallery", :title => "#{i.title}") do %>
<div class="col7 col blogImage" style="background: url(<%= i.image.url %>)"></div>
<% end %>
<div class="col5 col blogDescript">
<p>
<%= i.description %>
</p>
</div>
</div>
</div>
<% end %>
</div>
<div class="col7 col blogImage" style="background: url(<%= i.image.url %>)"></div>