2012-03-05 14 views
0

私はクライアントコントローラとビューを持っています。ルーティングでも動作するnew_accountアクションとcreate_accountアクションを追加するにはどうすればよいですか?Rails 3に複数の新規/作成ルートを追加する方法

新しいクライアントがありますが、clientsの一部はウェブサイトにログインするアカウントとしても機能します。私は、クライアントが作成されているのか、ログインアカウントが作成されているのかに基づいて、異なるフィールドの入力を求めます。重複した情報を持つ2つの別々のモデルは必要ありません。

client_controller.rb - インデックス、新しい、作成、編集、更新、破壊、new_account、create_account

クライアントビュー - 私は、コントローラ内の各アクションのための景色を眺めることができます。

ルーティング - ../new_accountには、ビューではなく、クライアントモデルのnew_accountビューが表示されます。

これはうまくいけばうまくいきます。私はこれが困難ではないと思っていますが、私はちょうど方法が不足しています。

答えて

0

てみてください。rake routesを実行して

match 'new_account', 'client#new_account', :via => :get 
match 'create_account', 'client#create_account', :via => :post 

見るすべてのあなたのルート。

はここルーティングの詳細を参照してください:http://guides.rubyonrails.org/routing.html

+0

ありがとうございました。正しい構文は次のとおりです: 'match 'new_account' => 'users#new_account'、:via =>:get' – Hoffmann

0

あなたroutes.rb

resources :clients do 
    new do 
    scope type: 'account' do 
     get :account, to: 'clients#new' 
     post :account, to: 'clients#create' 
    end 
    end 
end 

、あなたがGET|POST /clients/new/accountでアクセスできるようになります必要のあるアクションでこれを入れてください。 コントローラには、この特定のケースを示すparams[:type]があります。

関連する問題