【问题标题】:How can I see how many users have a particular association in Rails?如何查看 Rails 中有多少用户具有特定关联?
【发布时间】:2013-04-21 01:48:22
【问题描述】:

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

一个User 可以有许多DropboxUser 帐户链接,许多DriveUser 帐户通过外键链接到他们的帐户。在我的模型声明中,DropboxUserDriveUser belongs_to :user。结合前面的语句,Userhas_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

【问题讨论】:

    标签: sql ruby-on-rails ruby console


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 2014-11-04
      • 1970-01-01
      • 2013-07-22
      • 2019-03-16
      • 1970-01-01
      • 1970-01-01
      • 2020-12-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多