Rails,发布到自定义方法

时间:2011-04-17 00:10:07

标签: ruby-on-rails ruby-on-rails-3

在我的组控制器中我有两种方法:

  def new
    @group = Group.new

    respond_to do |format|
      format.js
    end
  end

  def new_beta
    @group = Group.new

    respond_to do |format|
      format.js
    end
  end

我有一个像这样开始的表单:

 <%= form_for Group.new, :remote => true do |f| %>

如何让form_for发布到new_beta控制器?感谢

2 个答案:

答案 0 :(得分:1)

您可以设置:

 <%= form_for Group.new, :url=>{ :action =>"new_beta", :controller =>
"group"}, :remote => true do |f| %>

(您也可以 - 优选地 - 直接使用命名路线而不是“:url =&gt;”)

答案 1 :(得分:0)

首先这是不好的做法,但是......

在您的路线中添加

resources :groups do
  member do
    get :new_beta
    post :new_beta_create
  end
end

现在

 <%= form_for Group.new, :url => new_beta_create_groups_path, :remote => true do |f| %>

但是我建议创建一个名为:alternate_groups_controller的新控制器。更好的是为它们创建命名空间。

祝你好运