【问题标题】:Formatting div in partials using bootstrap使用引导程序在部分中格式化 div
【发布时间】:2015-06-14 00:59:55
【问题描述】:

Total newb 问题:我创建了一个用于每行调用 3 个相同 div 的部分。 div 是动态的,所以我觉得我不应该重复相同的代码 3 次。我怎样才能用循环来压缩它?

产品索引

<div class="container">
  <%= render 'products/product' %>
</div>

产品部分

<div class="row">
    <h2 class="text-center">Products</h2>
    <% @products.each do |category, products| %>
      <h3><%= category.name %></h3>
      <% products.each do |product| %>

        <div class="col-md-4">
            <div class="thumbnail">
              <%= image_tag product.default_image.path %>
              </div>
          <div class="caption">
                <h4><%= link_to product.name, product_path(product.permalink) %></h4>
                <p><%= product.short_description %></p>
                <p><b>Price:</b> <%= number_to_currency product.price %></p>
                <p><a href="#" class="btn btn-primary" role="button">Button</a> <a href="#" class="btn btn-default" role="button">Button</a></p>
                </div></div>

        <div class="col-md-4">
            <div class="thumbnail">
              <%= image_tag product.default_image.path %>
              <div class="caption">
                <h4><%= link_to product.name, product_path(product.permalink) %></h4>
                <p><%= product.short_description %></p>
                <p><b>Price:</b> <%= number_to_currency product.price %></p>
                <p><a href="#" class="btn btn-primary" role="button">Button</a> <a href="#" class="btn btn-default" role="button">Button</a></p>
                </div></div>

          <div class="col-md-4">
            <div class="thumbnail">
              <%= image_tag product.default_image.path %>
              <div class="caption">
                <h4><%= link_to product.name, product_path(product.permalink) %></h4>
                <p><%= product.short_description %></p>
                <p><b>Price:</b> <%= number_to_currency product.price %></p>
                <p><a href="#" class="btn btn-primary" role="button">Button</a> <a href="#" class="btn btn-default" role="button">Button</a></p>
                </div></div>
          <% end %>
        </div>
      <% end %>

【问题讨论】:

  • 您不是展示了 3 次相同的产品吗?
  • @DVG 是的,我正在尝试使用这种类型的动态 div 显示不同的产品,只是在设置时遇到了麻烦,以便每行设置 3 个不同的产品
  • 我会说拿那个 div 做一个部分,然后把它传递给产品。然后,使用 each_with_index 并使用索引值关闭行并每隔三个产品打开一个新的

标签: html ruby-on-rails twitter-bootstrap


【解决方案1】:

在你的 index.html.erb 中:

<h2 class="text-center">Products</h2>
<%= render @products %>`

然后有一个_product.html.erb,它只包含一种产品的信息,rails 会知道你想做什么:

<div class="row">
 <h3><%= product.category.name %></h3>
 <div class="col-md-4">
 <div class="thumbnail">
  <%= image_tag product.default_image.path %>
 </div>
 ....

签出:http://guides.rubyonrails.org/layouts_and_rendering.html#using-partials。查找子标题:rendering collections

【讨论】:

    猜你喜欢
    • 2018-06-22
    • 2018-12-13
    • 2017-07-29
    • 2016-05-19
    • 2015-08-06
    • 1970-01-01
    • 2015-12-21
    • 2011-11-02
    • 1970-01-01
    相关资源
    最近更新 更多