Will_paginate 刷新额外的查询参数
Will_paginate flush additional query params
有个问题。我有一个非常简单的论坛应用程序和一个 TopicsController#show
操作,它呈现一个带有 post 的主题页面。 post 是使用 will_paginate gem
渲染的。
但该操作还允许您转到特定 post 而不是特定页面(例如 /topics/23?post=235
),它会自动计算您应该在的页面,并且工作正常。
除了 will_paginate
助手生成 links 并在其中保留 post
参数,因此即使您单击 link,您也会返回到同一页,因为存在 post
参数。
我该如何解决这个问题?
您可以传入想要will_paginate使用的参数。通常你都想要它们,所以在这种情况下你想删除你不想要的那个。有点难看,但它有效:
= will_paginate @topics, params: params.reject{|k,v| k == 'post'}
您可以将其包装在帮助程序中以进行清理。
如果您使用的是 Rails,您可以更简洁地执行此操作:
= will_paginate @topics, params: params.except('post')
有个问题。我有一个非常简单的论坛应用程序和一个 TopicsController#show
操作,它呈现一个带有 post 的主题页面。 post 是使用 will_paginate gem
渲染的。
但该操作还允许您转到特定 post 而不是特定页面(例如 /topics/23?post=235
),它会自动计算您应该在的页面,并且工作正常。
除了 will_paginate
助手生成 links 并在其中保留 post
参数,因此即使您单击 link,您也会返回到同一页,因为存在 post
参数。
我该如何解决这个问题?
您可以传入想要will_paginate使用的参数。通常你都想要它们,所以在这种情况下你想删除你不想要的那个。有点难看,但它有效:
= will_paginate @topics, params: params.reject{|k,v| k == 'post'}
您可以将其包装在帮助程序中以进行清理。
如果您使用的是 Rails,您可以更简洁地执行此操作:
= will_paginate @topics, params: params.except('post')