从Rails 2.3.6开始不推荐使用overwrite_params – 接受的解决方法?

因此,从Rails 2.3.6开始,看起来不推荐使用overwrite_params 。 是否有一种通常被认为是最佳实践的合适解决方法?

例如,我曾经能够做到以下(我认为这非常有用):

 url_for(:overwrite_params => {:page => 1}) 

我已经看到在线提到的以下解决方案……这是新方法吗?

 url_for(request.params.merge(:page => 1)) 

谢谢您的帮助。

我实际上只是在Railscast剧集中看到了这一点: http ://railscasts.com/episodes/240-search-sort-paginate-with-ajax

他用params.merge基本上建议你说的。 请注意,您不需要说request.params,params就足够了。 此外,如果您使用link_to,那么您可能不需要url_for。 换句话说,如果你有:

 link_to title, url_for(params.merge(:page => 1)) 

那么它就足够了

 link_to title, params.merge(:page => 1)