Class: Polytag::Concerns::TagOwner::ModelHelpers
- Inherits:
-
Object
- Object
- Polytag::Concerns::TagOwner::ModelHelpers
- Defined in:
- lib/polytag/concerns/tag_owner/model_helpers.rb
Instance Method Summary collapse
- #del(group) ⇒ Object (also: #delete, #remove, #destroy)
- #del_tag(tag, group = nil) ⇒ Object (also: #delete_tag, #remove_tag, #destroy_tag)
- #exist?(group) ⇒ Boolean
-
#initialize(owner) ⇒ ModelHelpers
constructor
A new instance of ModelHelpers.
- #new(group) ⇒ Object (also: #add, #create)
- #new_tag(tag, group = nil) ⇒ Object (also: #add_tag, #create_tag)
- #owns_tag?(tag, group = nil) ⇒ Boolean
Constructor Details
#initialize(owner) ⇒ ModelHelpers
Returns a new instance of ModelHelpers.
5 6 7 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 5 def initialize(owner) @owner = owner end |
Instance Method Details
#del(group) ⇒ Object Also known as: delete, remove, destroy
17 18 19 20 21 22 23 24 25 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 17 def del(group) return false unless exist?(group) group = ::Polytag.get tag_group: group, owner: @owner, foc: :first group.destroy true end |
#del_tag(tag, group = nil) ⇒ Object Also known as: delete_tag, remove_tag, destroy_tag
50 51 52 53 54 55 56 57 58 59 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 50 def del_tag(tag, group = nil) return false unless owns_tag?(group, tag) tag = ::Polytag.get tag_group: group, owner: @owner, foc: :first, tag: tag tag.destroy true end |
#exist?(group) ⇒ Boolean
30 31 32 33 34 35 36 37 38 39 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 30 def exist?(group) group = ::Polytag.get tag_group: group, owner: @owner, foc: :first # Return the result group.is_a?(::Polytag::TagGroup) rescue ActiveRecord::RecordNotFound false end |
#new(group) ⇒ Object Also known as: add, create
9 10 11 12 13 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 9 def new(group) ::Polytag.get tag_group: group, foc: :first_or_create, owner: @owner end |
#new_tag(tag, group = nil) ⇒ Object Also known as: add_tag, create_tag
41 42 43 44 45 46 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 41 def new_tag(tag, group = nil) ::Polytag.get tag_group: group, foc: :first_or_create, owner: @owner, tag: tag end |
#owns_tag?(tag, group = nil) ⇒ Boolean
64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/polytag/concerns/tag_owner/model_helpers.rb', line 64 def owns_tag?(tag, group = nil) tag = ::Polytag.get tag_group: group, owner: @owner, foc: :first, tag: tag # Return the result tag.is_a?(::Polytag::Tag) rescue ActiveRecord::RecordNotFound false end |