This commit is contained in:
r888888888
2013-08-07 13:00:25 -07:00
parent 1c44aa0271
commit 3edf160887
2 changed files with 13 additions and 0 deletions

View File

@@ -3,6 +3,7 @@ class Artist < ActiveRecord::Base
before_save :normalize_name
after_save :create_version
after_save :save_url_string
after_create :categorize_tag
validates_uniqueness_of :name
belongs_to :creator, :class_name => "User"
has_many :members, :class_name => "Artist", :foreign_key => "group_name", :primary_key => "name"
@@ -10,6 +11,7 @@ class Artist < ActiveRecord::Base
has_many :versions, :order => "artist_versions.id ASC", :class_name => "ArtistVersion"
has_one :wiki_page, :foreign_key => "title", :primary_key => "name"
has_one :tag_alias, :foreign_key => "antecedent_name", :primary_key => "name"
has_one :tag, :foreign_key => "name", :primary_key => "name"
accepts_nested_attributes_for :wiki_page
attr_accessible :body, :name, :url_string, :other_names, :other_names_comma, :group_name, :wiki_page_attributes, :notes, :as => [:member, :gold, :builder, :platinum, :contributor, :janitor, :moderator, :default, :admin]
attr_accessible :is_active, :as => [:builder, :contributor, :janitor, :moderator, :default, :admin]
@@ -174,6 +176,10 @@ class Artist < ActiveRecord::Base
def tag_alias_name
TagAlias.find_by_antecedent_name(name).consequent_name
end
def categorize_tag
Tag.find_or_create_by_name("artist:#{name}")
end
end
module BanMethods

View File

@@ -205,5 +205,12 @@ class ArtistTest < ActiveSupport::TestCase
artist.reload
assert_equal("yyy", artist.other_names)
end
should "update the category of the tag" do
tag = FactoryGirl.create(:tag, :name => "abc")
artist = FactoryGirl.create(:artist, :name => "abc")
tag.reload
assert_equal(Tag.categories.artist, tag.category)
end
end
end