diff options
Diffstat (limited to 'app/models/deploy_key.rb')
-rw-r--r-- | app/models/deploy_key.rb | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/app/models/deploy_key.rb b/app/models/deploy_key.rb index de777b8ae53..5923497a1a3 100644 --- a/app/models/deploy_key.rb +++ b/app/models/deploy_key.rb @@ -6,6 +6,8 @@ class DeployKey < Key include PolicyActor include Presentable + self.allow_legacy_sti_class = true + has_many :deploy_keys_projects, inverse_of: :deploy_key, dependent: :destroy # rubocop:disable Cop/ActiveRecordDependent has_many :projects, through: :deploy_keys_projects @@ -23,6 +25,7 @@ class DeployKey < Key scope :with_projects, -> { includes(deploy_keys_projects: { project: [:route, namespace: :route] }) } scope :including_projects_with_write_access, -> { includes(:projects_with_write_access) } scope :including_projects_with_readonly_access, -> { includes(:projects_with_readonly_access) } + scope :not_in, ->(keys) { where.not(id: keys.select(:id)) } accepts_nested_attributes_for :deploy_keys_projects, reject_if: :reject_deploy_keys_projects? |