Commit 434c034159f584348b56a322dbcda8dc65b812f2
1 parent
20397091
Exists in
master
and in
4 other branches
Iid improvemets
* call set_iid before validation * make rake task pass event if objects are invalid * show iid in comment event at dashboard
Showing
5 changed files
with
16 additions
and
6 deletions
Show diff stats
app/helpers/events_helper.rb
... | ... | @@ -109,7 +109,7 @@ module EventsHelper |
109 | 109 | else |
110 | 110 | link_to event_note_target_path(event) do |
111 | 111 | content_tag :strong do |
112 | - "#{event.note_target_type} ##{truncate event.note_target_id}" | |
112 | + "#{event.note_target_type} ##{truncate event.note_target_iid}" | |
113 | 113 | end |
114 | 114 | end |
115 | 115 | end | ... | ... |
app/models/concerns/issuable.rb
... | ... | @@ -16,6 +16,7 @@ module Issuable |
16 | 16 | |
17 | 17 | validates :author, presence: true |
18 | 18 | validates :title, presence: true, length: { within: 0..255 } |
19 | + validate :set_iid, on: :create | |
19 | 20 | validates :iid, presence: true, numericality: true |
20 | 21 | |
21 | 22 | scope :authored, ->(user) { where(author_id: user) } |
... | ... | @@ -25,7 +26,6 @@ module Issuable |
25 | 26 | scope :unassigned, -> { where("assignee_id IS NULL") } |
26 | 27 | scope :of_projects, ->(ids) { where(project_id: ids) } |
27 | 28 | |
28 | - validate :set_iid, on: :create | |
29 | 29 | |
30 | 30 | delegate :name, |
31 | 31 | :email, | ... | ... |
app/models/event.rb
... | ... | @@ -284,6 +284,14 @@ class Event < ActiveRecord::Base |
284 | 284 | end |
285 | 285 | end |
286 | 286 | |
287 | + def note_target_iid | |
288 | + if note_target.respond_to?(:iid) | |
289 | + note_target.iid | |
290 | + else | |
291 | + note_target_id | |
292 | + end.to_s | |
293 | + end | |
294 | + | |
287 | 295 | def wall_note? |
288 | 296 | target.noteable_type.blank? |
289 | 297 | end | ... | ... |
app/views/search/_result.html.haml
... | ... | @@ -23,7 +23,7 @@ |
23 | 23 | %li |
24 | 24 | merge request: |
25 | 25 | = link_to [merge_request.target_project, merge_request] do |
26 | - %span ##{merge_request.id} | |
26 | + %span ##{merge_request.iid} | |
27 | 27 | %strong.term |
28 | 28 | = truncate merge_request.title, length: 50 |
29 | 29 | - if merge_request.for_fork? |
... | ... | @@ -37,7 +37,7 @@ |
37 | 37 | %li |
38 | 38 | issue: |
39 | 39 | = link_to [issue.project, issue] do |
40 | - %span ##{issue.id} | |
40 | + %span ##{issue.iid} | |
41 | 41 | %strong.term |
42 | 42 | = truncate issue.title, length: 50 |
43 | 43 | %span.light (#{issue.project.name_with_namespace}) | ... | ... |
lib/tasks/migrate/migrate_iids.rake
... | ... | @@ -4,7 +4,7 @@ task migrate_iids: :environment do |
4 | 4 | Issue.where(iid: nil).find_each(batch_size: 100) do |issue| |
5 | 5 | begin |
6 | 6 | issue.set_iid |
7 | - if issue.save | |
7 | + if issue.update_attribute(:iid, mr.iid) | |
8 | 8 | print '.' |
9 | 9 | else |
10 | 10 | print 'F' |
... | ... | @@ -19,7 +19,7 @@ task migrate_iids: :environment do |
19 | 19 | MergeRequest.where(iid: nil).find_each(batch_size: 100) do |mr| |
20 | 20 | begin |
21 | 21 | mr.set_iid |
22 | - if mr.save | |
22 | + if mr.update_attribute(:iid, mr.iid) | |
23 | 23 | print '.' |
24 | 24 | else |
25 | 25 | print 'F' |
... | ... | @@ -28,4 +28,6 @@ task migrate_iids: :environment do |
28 | 28 | print 'F' |
29 | 29 | end |
30 | 30 | end |
31 | + | |
32 | + puts 'done' | |
31 | 33 | end | ... | ... |