Iid improvemets

* call set_iid before validation
* make rake task pass event if objects are invalid
* show iid in comment event at dashboard
This commit is contained in:
Dmitriy Zaporozhets 2013-08-19 22:53:11 +03:00
parent 20397091f1
commit 434c034159
5 changed files with 16 additions and 6 deletions

View File

@ -109,7 +109,7 @@ module EventsHelper
else
link_to event_note_target_path(event) do
content_tag :strong do
"#{event.note_target_type} ##{truncate event.note_target_id}"
"#{event.note_target_type} ##{truncate event.note_target_iid}"
end
end
end

View File

@ -16,6 +16,7 @@ module Issuable
validates :author, presence: true
validates :title, presence: true, length: { within: 0..255 }
validate :set_iid, on: :create
validates :iid, presence: true, numericality: true
scope :authored, ->(user) { where(author_id: user) }
@ -25,7 +26,6 @@ module Issuable
scope :unassigned, -> { where("assignee_id IS NULL") }
scope :of_projects, ->(ids) { where(project_id: ids) }
validate :set_iid, on: :create
delegate :name,
:email,

View File

@ -284,6 +284,14 @@ class Event < ActiveRecord::Base
end
end
def note_target_iid
if note_target.respond_to?(:iid)
note_target.iid
else
note_target_id
end.to_s
end
def wall_note?
target.noteable_type.blank?
end

View File

@ -23,7 +23,7 @@
%li
merge request:
= link_to [merge_request.target_project, merge_request] do
%span ##{merge_request.id}
%span ##{merge_request.iid}
%strong.term
= truncate merge_request.title, length: 50
- if merge_request.for_fork?
@ -37,7 +37,7 @@
%li
issue:
= link_to [issue.project, issue] do
%span ##{issue.id}
%span ##{issue.iid}
%strong.term
= truncate issue.title, length: 50
%span.light (#{issue.project.name_with_namespace})

View File

@ -4,7 +4,7 @@ task migrate_iids: :environment do
Issue.where(iid: nil).find_each(batch_size: 100) do |issue|
begin
issue.set_iid
if issue.save
if issue.update_attribute(:iid, mr.iid)
print '.'
else
print 'F'
@ -19,7 +19,7 @@ task migrate_iids: :environment do
MergeRequest.where(iid: nil).find_each(batch_size: 100) do |mr|
begin
mr.set_iid
if mr.save
if mr.update_attribute(:iid, mr.iid)
print '.'
else
print 'F'
@ -28,4 +28,6 @@ task migrate_iids: :environment do
print 'F'
end
end
puts 'done'
end