diff --git a/app/models/rubygem.rb b/app/models/rubygem.rb index 54759595461..c878f4b1bdb 100644 --- a/app/models/rubygem.rb +++ b/app/models/rubygem.rb @@ -2,10 +2,10 @@ class Rubygem < ApplicationRecord include Patterns include RubygemSearchable - has_many :owners, through: :ownerships, source: :user has_many :ownerships, dependent: :destroy - has_many :subscribers, through: :subscriptions, source: :user + has_many :owners, through: :ownerships, source: :user has_many :subscriptions, dependent: :destroy + has_many :subscribers, through: :subscriptions, source: :user has_many :versions, dependent: :destroy, validate: false has_one :latest_version, -> { where(latest: true).order(:position) }, class_name: "Version" has_many :web_hooks, dependent: :destroy diff --git a/app/models/user.rb b/app/models/user.rb index 00e8b6b6502..7b268148583 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -15,13 +15,14 @@ class User < ApplicationRecord ].freeze before_destroy :yank_gems + + has_many :ownerships, dependent: :destroy has_many :rubygems, through: :ownerships + has_many :subscriptions, dependent: :destroy has_many :subscribed_gems, -> { order("name ASC") }, through: :subscriptions, source: :rubygem has_many :deletions - has_many :ownerships, dependent: :destroy - has_many :subscriptions, dependent: :destroy has_many :web_hooks, dependent: :destroy after_validation :set_unconfirmed_email, if: :email_changed?, on: :update