【问题标题】:How can I remember a parameter from the previous page so I can go back to it?我怎样才能记住上一页的参数以便我可以返回到它?
【发布时间】:2015-03-08 00:11:57
【问题描述】:

我正在考虑如何从单个列表页面返回到索引页面(与上一页一起)。这很像“返回”功能。但我不想总是去第一页。

索引页面有page的参数。 localhost:3000/listings?page=2

但在每个列表中,URL 都缺少页码信息。 本地主机:3000/listings/1

我使用的是 rails 4.1.8 和 Kaminari 0.16.3

列表控制器

  def index
    @listings = Listing.order("created_at DESC").page(params[:page])
  end

索引页面:

<%= paginate @listings %>

显示部分页面:

<%= link_to 'Back', root_path %>

路线:

root 'listings#index'

我该怎么做?

【问题讨论】:

    标签: ruby-on-rails kaminari


    【解决方案1】:

    一种方法是在会话中存储值

    def index
      if params[:page]
        session[:listing_index_page] = params[:page]
      end
      @listings = Listing.order("created_at DESC").page(session[:listing_index_page])
    end
    

    如果用户第一次导航到listings/index,将没有页面参数,Kaminari 应该假定页面 1。随后导航到页面 2 将在会话中存储 2。

    如果用户稍后返回到索引页面(没有明确的页面参数),将从会话中检索该值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-22
      • 1970-01-01
      • 2011-11-17
      • 1970-01-01
      • 2016-03-20
      • 1970-01-01
      相关资源
      最近更新 更多