kaminari ajax分页中的问题

kaminari ajax分页中的问题,ajax,ruby-on-rails-3,pagination,kaminari,Ajax,Ruby On Rails 3,Pagination,Kaminari,我在项目中使用kaminari ajax分页。它工作正常,但内容在页面中显示页数。例如,如果每页的项目数为7,则显示相同内容的7倍。我所做的是 在产品详细信息控制器中 def index @products=ProductDetail.where("department_id = ? and category_id = ?",1, 1).page(params[:page]).per(15) end def index @products=ProductDetail

我在项目中使用kaminari ajax分页。它工作正常,但内容在页面中显示页数。例如,如果每页的项目数为7,则显示相同内容的7倍。我所做的是

在产品详细信息控制器中

  def index
    @products=ProductDetail.where("department_id = ? and category_id = ?",1, 1).page(params[:page]).per(15)
  end
  def index
    @products=ProductDetail.where("department_id = ? and category_id = ?",1, 1).page(params[:page]).per(15)
  end
在product_details/index.html.erb中

<div id="product_details">
    <%= render @products %>
</div>
<div id="paginator">
    <%= paginate @products, :remote=>true %>
</div>
<div id="product_details">
    <%= render 'index' %>
</div>

正确%>
在product_details/index.js.erb中

$('#product_details').html('<%= escape_javascript render (@products) %>');
$('#paginator').html('<%= escape_javascript(paginate(@products, :remote=>true).to_s)%>');
$('#product_details').html('<%= escape_javascript render ('index') %>');
$('#产品详细信息').html('';
$('#paginator').html('true).to_s)%>');
在product_details/_product_detail.html.erb中

<div id="product_list">             
    <% @products.each do | product | %> 
        <div class="product_container">     
            <div class="product_box" >
                <div id="future_image_container">
                    <div class="image_block" >
                        <%= image_tag(product.image_path, :alt => "product image", :height=>"215px") %>
                    </div>
                    <span id="future_price" style="text-decoration: line-through; color: #9e9c9c;">
                        <span style="color: black;">
                            <%=  "$#{product.price}" %>
                        </span>
                    </span>
                    <div id="circle">
                        <p>
                            <% if(product.discount > 0) %>
                                <% new_price=((2.0*((product.price*product.discount)/100)).round)/2.0 %>
                            <% else %>
                                <% new_price=product.price %>
                            <% end %>
                            <%= "$#{new_price}"%>
                        </p>
                    </div>
                </div>
                <p class="future_product_name">
                    <%= product.name %>
                </p>
                <% @brands=Brand.where("id=?",product.brand_id)
                    @brands.each do |brand|
                        @brandname=brand.name
                    end
                %>
                <p class="future_product_name">
                    <%= "Brand : #{@brandname}" %>
                </p>
            </div>
        </div>
    <% end %>
</div>

“产品图片”,高度=>“215px”)%>

0) %>

请帮我解决这个问题

我注意到,当我使用每页的内容数量时,它会重复多少次。因此,我通过以下代码解决了这个问题:

在产品详细信息控制器中

  def index
    @products=ProductDetail.where("department_id = ? and category_id = ?",1, 1).page(params[:page]).per(15)
  end
  def index
    @products=ProductDetail.where("department_id = ? and category_id = ?",1, 1).page(params[:page]).per(15)
  end
在product_details/home.html.erb中

<div id="product_details">
    <%= render @products %>
</div>
<div id="paginator">
    <%= paginate @products, :remote=>true %>
</div>
<div id="product_details">
    <%= render 'index' %>
</div>

在product_details/index.js.erb中

$('#product_details').html('<%= escape_javascript render (@products) %>');
$('#paginator').html('<%= escape_javascript(paginate(@products, :remote=>true).to_s)%>');
$('#product_details').html('<%= escape_javascript render ('index') %>');
$('#产品详细信息').html('';
在product_details/_index.html.erb中

<div id="product_list">
    <%= paginate @products, :remote=>true %>                
    <% @products.each do | product | %> 
        <div class="product_container">     
            <div class="product_box" >
                <div id="future_image_container">
                    <div class="image_block" >
                        <%= image_tag(product.image_path, :alt => "product image", :height=>"215px") %>
                    </div>
                    <span id="future_price" style="text-decoration: line-through; color: #9e9c9c;">
                        <span style="color: black;">
                            <%=  "$#{product.price}" %>
                        </span>
                    </span>
                    <div id="circle">
                        <p>
                            <% if(product.discount > 0) %>
                                <% new_price=((2.0*((product.price*product.discount)/100)).round)/2.0 %>
                            <% else %>
                                <% new_price=product.price %>
                            <% end %>
                            <%= "$#{new_price}"%>
                        </p>
                    </div>
                </div>
                <p class="future_product_name">
                    <%= product.name %>
                </p>
                <% @brands=Brand.where("id=?",product.brand_id)
                    @brands.each do |brand|
                        @brandname=brand.name
                    end
                %>
                <p class="future_product_name">
                    <%= "Brand : #{@brandname}" %>
                </p>
            </div>
        </div>
    <% end %>
</div>

正确%>
“产品图片”,高度=>“215px”)%>

0) %>

现在没有产品重复,ajax分页也可以正常工作