Class: Keyword

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
lib/acts_as_keywordable/keyword.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.parse(list) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/acts_as_keywordable/keyword.rb', line 4

def self.parse(list)
  keyword_names = []


  keyword_names = list.split(/[\r\n]/).uniq.reject {|c| c == ""}

  # strip whitespace from the names
  keyword_names = keyword_names.map { |t| t.strip }

  # delete any blank tag names
  keyword_names = keyword_names.delete_if { |t| t.empty? }

  return keyword_names
end

Instance Method Details

#==(comparison_object) ⇒ Object



31
32
33
# File 'lib/acts_as_keywordable/keyword.rb', line 31

def ==(comparison_object)
  super || name == comparison_object.to_s
end

#also_on(keywordable) ⇒ Object



27
28
29
# File 'lib/acts_as_keywordable/keyword.rb', line 27

def also_on(keywordable)
  keywordings.find_all_by_keywordable_type(keywordable.to_s)
end

#on(keywordable) ⇒ Object



23
24
25
# File 'lib/acts_as_keywordable/keyword.rb', line 23

def on(keywordable)
  keywordings.create :keywordable => keywordable
end

#taggedObject



19
20
21
# File 'lib/acts_as_keywordable/keyword.rb', line 19

def tagged
  @tagged ||= keywordings.collect { |keywording| keywording.keywordable }
end

#to_sObject



35
36
37
# File 'lib/acts_as_keywordable/keyword.rb', line 35

def to_s
  name
end