diff options
author | Yorick Peterse <yorickpeterse@gmail.com> | 2017-06-08 17:16:27 +0200 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2017-07-06 12:01:36 +0200 |
commit | 8fbbf41e29f5e0f56b7eb9d37aadba856b68bcce (patch) | |
tree | 55308daf8218231e33f7c50ae81cd5774c058576 /app/models/issue.rb | |
parent | c63e3221587daf9e7464f7d2079ca8ed3111f6ff (diff) | |
download | gitlab-ce-8fbbf41e29f5e0f56b7eb9d37aadba856b68bcce.tar.gz |
Added Cop to blacklist the use of `dependent:`
This is allowed for existing instances so we don't end up 76 offenses
right away, but for new code one should _only_ use this if they _have_
to remove non database data. Even then it's usually better to do this in
a service class as this gives you more control over how to remove the
data (e.g. in bulk).
Diffstat (limited to 'app/models/issue.rb')
-rw-r--r-- | app/models/issue.rb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/app/models/issue.rb b/app/models/issue.rb index 31e3504e535..01f985823e1 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -23,9 +23,14 @@ class Issue < ActiveRecord::Base belongs_to :project belongs_to :moved_to, class_name: 'Issue' - has_many :events, as: :target, dependent: :destroy + has_many :events, as: :target, dependent: :destroy # rubocop:disable Cop/ActiveRecordDependent - has_many :merge_requests_closing_issues, class_name: 'MergeRequestsClosingIssues' + has_many :merge_requests_closing_issues, + class_name: 'MergeRequestsClosingIssues', + dependent: :delete_all # rubocop:disable Cop/ActiveRecordDependent + + has_many :issue_assignees + has_many :assignees, class_name: "User", through: :issue_assignees has_many :issue_assignees has_many :assignees, class_name: "User", through: :issue_assignees |