在用户级定关联:了解定制的has_many协会
has_many :followers, through: :follows_as_fallowable,
source: :user
它返回下面给定用户的用户实例。但是当我开始深入挖掘时,我意识到我并不完全理解为什么此关联(user.followers)返回User对象。
基于什么?我知道它可以通过关联或class_name散列参数的名称推断出来,但在这种情况下,这些实际上都不重要。 我没有Follower模型,我还没有提供class_name属性。 Source参数只是说它应该按连接表中的用户列进行搜索。
那么Rails如何知道它应该从Users表中选择?
编辑:
follow_as_followable是在用户模型中的另一个相关联:
has_many :follows_as_fallowable, class_name: 'Follow', as: :followable
嗯,但follow_as_followable是另一种关联(请参阅编辑)我不介绍它在哪里引用用户? – avest