我迁移了这个以启用计数器缓存
class AddUniquecodesCountToUser < ActiveRecord::Migration
  def up
    add_column :users, :uniquecodes_count, :integer, :default => 0
    User.reset_column_information
    User.all.each do |p|
      User.reset_counters(p.id, :uniquecodes)
    end
  end
  def down
    remove_column :users, :uniquecodes_count
  end
end
我通常通过此代码获取用户拥有的唯一代码数量
current_user.uniquecodes.joins(:community).merge(Community.not_deleted).order("uniquecodes.updated_at DESC").count.to_s
模型/社区.rb
....
def self.not_deleted
    where deleted_at: nil
end
....
我这样做的原因是,社区记录可能会被删除。因此,一旦相关社区被删除,我就不想显示唯一代码。
正如您看到的我的迁移文件,它只是在用户创建/删除唯一代码时向上或向下计数user_id与特定用户的 id 相关的唯一代码的总数。  
如何添加我上面写的条件以排除community_id被删除的唯一代码(如果删除,deleted_at 列将填充时间戳)