Rails-选择不存在活动存储链接的记录

时间:2018-11-13 11:30:42

标签: ruby-on-rails rails-activestorage ruby-on-rails-5.2

我正在使用Rails主动存储,我想知道是否有可能创建一个作用域,以便我可以拉出缺少个人资料图像的用户

假设我具有以下User模型

class User < ApplicationRecord
  has_one_attached :avatar
end

我知道我可以通过以下方法检查图像是否与对象链接

user.avatar.attached?

但是,如果我想从数据库中删除那些缺少头像的用户怎么办?我敢肯定有比拉动所有用户并遍历所有用户来查找没有avatar

的用户更好的方法

任何提示将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以尝试join并让所有具有化身的用户并像这样将其减去给所有用户:

@no_avatar_users = User.all - User.joins(:avatar)