添加新的行动路线

时间:2012-11-21 17:40:33

标签: ruby-on-rails ruby routes

我在用户控制器中获得了这些操作

class UsersController < ApplicationController
  def index #default action
    ...
  end

  def new #default action
    ...
  end

  def another_new
    ...
  end

  def create
    ...
  end

  def another_create
    ...
  end
end

我希望能够 /users/another_new并通过某种链接:method => :another_create拨打电话 制作/users/another_new

我收到了以下config / routes.rb

get '/users/another_new' :to => 'users#another_new'
resources :users

我的问题是,这是否是添加get的正确方法以及我如何添加another_create方法。

3 个答案:

答案 0 :(得分:27)

你的config / routes.rb文件中的

执行此操作

resources :users do
  collection do
    get 'another_new'
    post 'another_create'
  end
end

还要看一下HERE,以便清楚地理解概念。

希望这可以帮助你老兄:)

答案 1 :(得分:3)

在routes.rb

中试试
match "/users/another_new " => "users#another_new", :as => 'another_new' 

然后你可以做

link_to "MyUrl", another_new_path

这应该有效。祝你好运。

答案 2 :(得分:1)

另请注意,您不应该:method => :another_new。您:method的选项为:get:put:post:delete,您使用的选项应与您在路线中定义操作的方式相匹配。< / p>