Ruby on rails Rails,从新建重定向到创建
嘿,我正在写一个应用程序来处理体育赛事的注册。这些项目中有些项目每次参赛都有多名运动员,而有些项目只有一名运动员。我目前正在将运动员发送到Ruby on rails Rails,从新建重定向到创建,ruby-on-rails,Ruby On Rails,嘿,我正在写一个应用程序来处理体育赛事的注册。这些项目中有些项目每次参赛都有多名运动员,而有些项目只有一名运动员。我目前正在将运动员发送到BoatsController上的新动作,如下所示: <%= link_to 'Register', new_event_boat_path(@event) %> 我的问题是,如果新操作看到事件只需要每个船一个用户,我如何将用户直接转发到创建操作?更简单地说,如何从操作中生成POST?您可以创建一个方法来封装来自create操作的大部分代码,
BoatsController
上的新动作,如下所示:
<%= link_to 'Register', new_event_boat_path(@event) %>
我的问题是,如果新操作看到事件只需要每个船一个用户,我如何将用户直接转发到创建操作?更简单地说,如何从操作中生成POST?您可以创建一个方法来封装来自create操作的大部分代码,并从create(像往常一样使用参数)和new中的特例(从用户对象发送数据)调用它
boats\u path
或任何您试图创建的对象。您不需要做任何花哨的事情。创建操作只是控制器中的一个方法。您可以像调用任何其他方法一样调用它:
def new
if event_only_requires_one_user_per_boat
create
else
#display new form
end
end
此外,这种技术可以防止用户发出多个请求,因为它不会使用户重定向。希望它能奏效,但不是像我相信你知道的那样,你将来应该怎么做。
def new
if event_only_requires_one_user_per_boat
create
else
#display new form
end
end