2011-12-06 18 views
1

次のことを実行するのがベストプラクティスであるかどうかを調べるだけです。Rails 3ルートとモデルの設定

私は、ゼロまたは企業の多くのインスタンス

会社のインスタンスは、同社ができないことをグループ

検証のゼロまたは多くのインスタンスを持つことができる2つのモデル

Group 
    id int pk 
    name string 

Company 
    id int pk 
    name string 

グループインスタンスを持つことができています同じグループに複数回属しています

has_and_belongs_to_many association(介在モデルなし)を使用していますか?

has_many:through(組織モデルの設定)を使用しますか?

私はセットアップ安らかビューにしたい:私は周りを取得しようとしています問題は、私のセットアップモデルと、次のビューを行う方法です

Group 
/groups  (Show All Group Names) 
/groups/1 (Show one group) 
/groups/new (Add Group) 
etc... 


Companies 
/companies/1 (show all companies) 
/companies/1 (Show company) 
/companies/new (Add Company) 
etc... 

(Show all companies for a specified group) /groups/1/companies ?? 
(Add, update and remove companies for a specified group ?!) 

答えて

2

あなたがnested routes

を使用したいなどあなたのroutes.rbファイル

resources :groups do 
    resources :companies 
    end 

その後、モデル内のグループbelongs_toの会社とグループhas_manyの会社で書きます。

ルーティングの詳細については、guidesを必ず確認してください。

+0

会社は、必ずしも上記のようにグループに所属しているわけではありません(企業インスタンスは、グループのインスタンスをゼロまたは多数持つことができます)。会社はグループの一部ではなく存在することができます... –

+0

あなたはリソースを追加することができます:企業は2回、通常は1回、ルートファイルのグループの下にネストされます。 "/ groups/1/companies"のようなルートが必要な場合は、ネストが必要です。あなたのアプリのルーティングに関する詳細な情報を得るために、コンソールに "rake routes"と入力してください。 – tmaximini

+0

ああ、私は...リソースを複製すれば、コントローラモデルをセットアップするにはどうすればいいですか?ありがとう –

関連する問題