我正在开发一个个人网站在轨道上的红宝石。 我有一个表格被这样动态生成:张贴表单提交获取请求标题
<div>
<%= @request_type %>
<h1>Login Form</h1>
<% if @error == true %>
<h1>Error: Login Information Invalid</h1>
<% end %>
<%= form_for :user, url: {action: "login"}, method: :post do |f| %>
<p> E-mail: <br /> <%= f.text_field :email %></p>
<p> Password: <br /> <%= f.password_field :password %></p>
<p><%= submit_tag "Log In!", :disable_with => "Logging in..." %></p>
<% end %>
</div>
的@request_type
被设置为request.request_method()
,用于调试目的的现在。
的HTML形式生成具体如下所示:
<form accept-charset="UTF-8" action="/login" method="post">
<!-- authentication token here -->
<p> E-mail: <br /> <input id="user_email" name="user[email]" type="text" /></p>
<p> Password: <br /> <input id="user_password" name="user[password]" type="password" /></p>
<p><input data-disable-with="Logging in..." name="commit" type="submit" value="Log In!" /></p>
</form>
然而,任何时候我提交,标题被设定与GET方法中,代替POST如在表格元素声明(见method="post"
)。
R.O.R.可能与正在发生的事情无关...我使用Chrome来测试我的应用程序。有关为何发生这种情况的任何想法?我绝对需要使用POST的请求。
如果有任何其他信息可能对解决此问题有用,请询问,我会提供。
编辑:相关路线:
login POST /login(.:format) user#login
GET /login(.:format) user#login'
我看不出有任何理由张贴不与“登录”行动相关的路由。
你可以做一个耙路线和后期的输出? – 2014-11-04 05:57:20
@CaffeineCoder我已经发布了相关路线......我假设这就是你要找的东西?我可以发布所有这些,如果你真的想... – Serge 2014-11-04 06:03:24
不,这没关系。我想下面的答案显示了代码究竟有什么问题。 – 2014-11-04 06:05:05