我有这条路线:
get 'events/new' => 'events#new'
为此,使用form_for
接受空@event
模型对象的相应操作和模板:
<%= form_for(@event) do |f| %>
现在,我也有这条路线:
post '/events' => 'events#hey'
并且在hey
操作中我不做任何事情,只是让视图模板接管,显示一些静态内容。
问题在于:当我转到site.com/events/new
时,输入任意内容并点击提交按钮,Rails会将我重定向到site.com/events/
,显示hey.html.erb
的内容查看模板!
这是预期的行为吗?我期望的是去site.com/events/hey
。在form_for
请求后,POST
是否有一些隐式重定向?
答案 0 :(得分:1)
您的post '/events' => 'events#hey'
会将您带到'/ events',您只需渲染hey.html.erb模板,但这不会更改网址。你想要做的是:
post '/events/hey' => 'events#hey'