将URL转换为JSON版本?

在我的应用程序的所有页面上,我想要一个指向当前页面的JSON版本的链接。 这样做的任何巧妙的技巧? 它变得复杂的地方是URL中包含额外的’&’参数。

所以url将被转换为:

'/users' => '/users.json' '/users?page=1&per_page=5' => '/users.json?page=1&per_page=5' 

试试这个 :

 polymorphic_path( @user, :format => :json ) 

(如此API文档中所示 )

或者:

 user_path( :id => @user.id, :format => :json ) 

此答案的归因来自获取当前页面的url,但具有不同的格式 ,并进行了修改:

帮手:

 def current_url(new_params) url_for params.merge(new_params) end 

链接:

 <%= link_to "JSON of this page", current_url(:format=>:json)