我的Rails应用程序中有一个link_to方法:
link_to t('edit'), edit_building_path(@building, :hidden_action => params[:action])
如何从网址中删除hidden_action?
目前网址如下:
http://localhost:3000/buildings/2/edit?hidden_action=new
我的问题是我需要知道用户从哪个页面访问此link_to。
答案 0 :(得分:2)
在rails helper中,它取决于你
def edit_the_building_url(building, you_want_the_params_or_not)
if you_want_the_params_or_not
edit_building_path(building, :hidden_action => params[:action])
else
edit_building_path(building)
end
end
然后在您的控制器中
link_to t('edit'), edit_the_building_url(@building, true)
或
link_to t('edit'), edit_the_building_url(@building, false)
如果以上并不能让您获利,只需
url = url.chomp("?hidden_action=#{params[:action]}")