【Rails】Association 1:nのモデル

rails g model project name:string
rails g model group name:string

rails g migration AddProjectIdToGroup project_id:integer

【model】に追記

class Group < ActiveRecord::Base
    belongs_to :project
end

 

rake db:migrate

 

【使い方】

p=Project.create(name: “PRJ”)
g=Group.create(name:”GRP1″)
g.project=p

 

Projectからgroupを参照するときは、下記を追加

 

class Project < ActiveRecord::Base

    has_many :groups
end

 

g = Group.find(1)

p = Project.find(1)

p.groups << g

 

ただし、

group.project = p

しただけでは、

p.groupsに反映されないので注意

 

 

Leave a Reply