我无法理解我将如何使用与其没有完全关联的模型对儿童进行范围。主要模型是Kid,另一个是Favorite。在应用程序中,用户可以拥有最喜欢的妈妈和一个孩子属于一个妈妈和爸爸。爸爸妈妈不属于任何东西:我如何通过一个有点关联的模型进行范围扩展?
class Favorite < ActiveRecord::Base
belongs_to :user
belongs_to :mom
end
class Kid < ActiveRecord::Base
belongs_to :user
belongs_to :dad
belongs_to :mom
end
class User < ActiveRecord::Base
has_many :kids
has_many :favorites
end
正如你所看到的,最喜欢的没有任何关联的孩子。我猜如果我把它做成像favorite.kids或kid.favorites那样通过对方,但后者对我来说没有意义,因为我想用它做什么。
我想要做的是创建一个列出父亲的孩子,但只为那些是用户最喜爱的妈妈的范围。所以像这样:
@dad = Dad.find(params[:dad_id])
@kids = @dad.kids.current_users_favorite_moms
但是哪个模型,我开始收藏夹?爸?妈妈?我不确定。你可以帮帮我吗?
所以最主要的是一个孩子,他有一个爸爸,一个妈妈,还有一个最喜欢的妈妈?什么是用户? – 2014-09-04 23:28:27
@MohammadAbuShady我编辑了我的问题以包含'User'模型。是的,孩子是主要的东西。 – user2784630 2014-09-04 23:31:18