Rails URL没有显示,只有视图呈现

时间:2016-09-16 09:54:08

标签: ruby-on-rails ruby forms

我有这条路线:

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是否有一些隐式重定向?

1 个答案:

答案 0 :(得分:1)

您的post '/events' => 'events#hey'会将您带到'/ events',您只需渲染hey.html.erb模板,但这不会更改网址。你想要做的是:

post '/events/hey' => 'events#hey'