Add StaticModel role, and add it to Commit model

Instead of doing this:

    link_to(commit.id, project_commit_path(project, id: commit.id))
    Note.create(noteable_id: commit.id, noteable_type: "Commit", ...)

It lets us do this:

    link_to(commit.id, project_commit_path(project, commit))
    Note.create(noteable: commit, ...)
This commit is contained in:
Robert Speicher 2012-09-01 23:39:28 -04:00
parent 877aa54586
commit 8db2a59d0b
2 changed files with 39 additions and 8 deletions

View file

@ -1,6 +1,7 @@
class Commit
include ActiveModel::Conversion
include Gitlab::Encode
include StaticModel
extend ActiveModel::Naming
attr_accessor :commit
@ -22,8 +23,7 @@ class Commit
:to_patch,
to: :commit
class << self
class << self
def find_or_first(repo, commit_id = nil, root_ref)
commit = if commit_id
repo.commit(commit_id)
@ -85,7 +85,7 @@ class Commit
first = project.commit(to.try(:strip))
last = project.commit(from.try(:strip))
result = {
result = {
commits: [],
diffs: [],
commit: nil
@ -105,10 +105,6 @@ class Commit
end
end
def persisted?
false
end
def initialize(raw_commit, head = nil)
@commit = raw_commit
@head = head
@ -155,7 +151,7 @@ class Commit
prev_commit.try :id
end
def parents_count
def parents_count
parents && parents.count || 0
end
end