Rails button_to在指定post时使用get请求

时间:2012-10-19 16:30:41

标签: ruby-on-rails post routes button-to

所以在我的rails应用程序中,我的一个页面上有一个button_to。当我单击页面上的那个按钮时,它会转到相应的操作并执行我想要的所有操作,但是:它使用GET请求。当我查看网络下的chrome控制台时,它会使用GET请求显示它。

当我第一次注意到这一点时,我正在通过无线连接到互联网的笔记本电脑上运行rails服务器,并且我使用我的ipad连接到它(用于测试目的)并且连接速度相当慢,所以当点击后加载页面按钮参数显示在地址栏中几秒钟。我不想要这个。

所以,这促使我做了一些检查,正如我所说,在Chrome网络标签下,它显示了一个获取请求,当我指定:via => :post时,在我的路线中,然后转到它打破的页面。它说没有路线匹配[GET] /----。当我删除:via => :post时它工作正常。这确认在点击/----时,它正在使用GET请求转到button_to页面。

我已尝试在method = post中指定button_to,尽管rails api表示默认为帖子。

任何人都可以提供一些有关为什么使用'get'而不是'post'的见解?如果可能的话,我非常希望它使用帖子。

1 个答案:

答案 0 :(得分:1)

我考虑过羞耻地删除这个问题,但我想我会发布答案。

在我的带有button_to的页面上,我有一个包含一些文本字段的表单。这些包含半敏感数据,我不想坐在网址中,但我需要传递到下一页。 button_to提交所述表单并重定向到适当的页面。在表单标签中我指定了method=get。我刚才注意到了。今年最重要的 face palm 时刻。感谢任何人阅读并考虑了我的问题。