0

我试图弄清楚如何使用 Rails 控制台来获取具有两个特定关联的用户数量。这是我的条件:

AUser可以有许多DropboxUser帐户链接,并且许多DriveUser帐户通过外键链接到他们的帐户。在我的模型声明中,DropboxUserDriveUser belongs_to :user. 结合前面的陈述, aUser has_many :dropbox_usershas_many :drive_users. 我知道我已经链接了我的所有模型,所以现在我想知道如何找出有多少User帐户同时拥有一个DropboxUser帐户和一个DriveUser与之关联的帐户。

这是我尝试过的一些代码(不成功):

User.count(:conditions => "dropbox_users.uid='user.id' AND drive_users.uid='user_id'")

也许我的最后一个查询朝着正确的方向前进,也许不是。它告诉我no such column: dropbox_users.uid

4

1 回答 1

1

您必须加入dropbox_users才能对其进行查询。

User.joins(:dropbox_users).joins(:drive_users).count

此外,由于joins使用INNER JOIN,它只会返回同时具有 Dropbox 和 Drive 帐户的记录。

于 2013-04-21T01:56:17.887 回答