2010-07-31 150 views
0

在下面的代码创建了一个职位,属于人:Ruby on Rails的迁移问题

class Person < ActiveRecord::Base 
    has_many :readings 
    has_many :posts, :through => :readings 
end 

person = Person.create(:name => 'john') 
post = Post.create(:name => 'a1') 
person.posts << post 

但我不知道哪阅读这篇文章属于当它保存到。

我不太明白。

感谢

回答

1

post.reading将是零

现在,我不认为这是你想要的,所以你可能会想,以防止该众生得救

class Reading < ActiveRecord::Base 
    belongs_to :person 
    has_many :posts 
    validates_presence_of :person 
end 

但是,这对我来说似乎有点不对......我想你可以有自己的人,还有自己的帖子,但是阅读是人与帖子的交集。在这种情况下:

class Person 
    has_many :readings 
end 

class Post 
    has_many :readings 
end 

class Reading 
    belongs_to :person 
    belongs_to :post 
    validates_presence_of :person, :post 
end