0

我正在尝试对产品详细信息(图像)进行分页,但出现此错误。

NoMethodError in Home#index Showing /home/aws002/webpage/app/views/home/index.html.erb where line #6 raise: undefined method `current_page' for #

这是我的产品控制器代码:

def index
    @rroducts = Product.order(:name)
    Kaminari.paginate_array(@products).page(params[:page]).per(3)
    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @products }
    end
end

我正在尝试在主页中显示。查看文件代码为:

<% @products=Product.all %>
  <%= paginate @products %>
  <% @products.each do |p|%>
    <%= image_tag("Images/#{p.id}.jpeg",:alt => p.name) %>
    <p> Price: </p>
    <%= p.price %>
    <p> Discount: </p>
    <%= p.discount %>
  <br/>
  <% end %>

请帮我解决这个问题。提前致谢。

4

3 回答 3

3

尝试这个

def index
 @products = Product.order(:name).page(params[:page]).per(3)
 respond_to do |format|
  format.html # index.html.erb
  format.json { render json: @products }
 end
end
于 2014-02-01T11:20:42.397 回答
1

我得到了答案。

由于我正在检索保存在公共目录中的图像并且不使用任何控制器或模型来检索图像,因此我必须仅在视图文件中包含该 kaminari 部分。

Kaminari.paginate_array(@products).page(params[:page]).per(3)

这应该添加到视图文件中。

于 2013-04-12T07:11:44.147 回答
0

我认为错误来自您的 index 方法,因为您声明了名为 @rroducts 的实例变量,因为您实际上使用了另一个名为 @products 的 Kaminari

于 2013-11-20T18:48:55.213 回答