Class: Administrate::Field::ActsAsTaggable

Inherits:
Text
  • Object
show all
Defined in:
lib/administrate/field/acts_as_taggable.rb

Defined Under Namespace

Classes: Engine

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.permitted_attribute(attr) ⇒ Object



24
25
26
27
# File 'lib/administrate/field/acts_as_taggable.rb', line 24

def self.permitted_attribute(attr)
  context = super.to_s.singularize
  "#{context}_list"
end

Instance Method Details

#attributeObject



19
20
21
22
# File 'lib/administrate/field/acts_as_taggable.rb', line 19

def attribute
  context = super.to_s.singularize
  "#{context}_list"
end

#contextObject



15
16
17
# File 'lib/administrate/field/acts_as_taggable.rb', line 15

def context
  options.fetch(:context, @attribute)
end

#delimittedObject



37
38
39
# File 'lib/administrate/field/acts_as_taggable.rb', line 37

def delimitted
  tags.join(', ').to_s
end

#nameObject



33
34
35
# File 'lib/administrate/field/acts_as_taggable.rb', line 33

def name
  context.to_s
end

#tag_optionsObject



45
46
47
48
49
50
51
# File 'lib/administrate/field/acts_as_taggable.rb', line 45

def tag_options
  return [] unless defined? ActsAsTaggableOn::Tag

  ActsAsTaggableOn::Tag.for_context(context).order(:name).map do |t|
    { text: t.name, value: t.name }
  end
end

#tagsObject



29
30
31
# File 'lib/administrate/field/acts_as_taggable.rb', line 29

def tags
  data
end

#truncateObject



41
42
43
# File 'lib/administrate/field/acts_as_taggable.rb', line 41

def truncate
  delimitted.to_s[0...truncation_length]
end