Class: YummyGuide::Administrate::Fields::VersionItemField

Inherits:
Administrate::Field::Base
  • Object
show all
Defined in:
app/fields/yummy_guide/administrate/fields/version_item_field.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.field_typeObject



7
8
9
# File 'app/fields/yummy_guide/administrate/fields/version_item_field.rb', line 7

def self.field_type
  "yummy_guide_administrate/version_item_field"
end

Instance Method Details

#labelObject



15
16
17
18
19
20
# File 'app/fields/yummy_guide/administrate/fields/version_item_field.rb', line 15

def label
  target = target_resource
  return fallback_label if target.blank?

  "#{target.class.name.demodulize} ##{target.id}"
end

#linkable?Boolean

Returns:

  • (Boolean)


30
31
32
# File 'app/fields/yummy_guide/administrate/fields/version_item_field.rb', line 30

def linkable?
  path.present?
end

#pathObject



22
23
24
25
26
27
28
# File 'app/fields/yummy_guide/administrate/fields/version_item_field.rb', line 22

def path
  return if target_resource.blank?

  Rails.application.routes.url_helpers.polymorphic_path([namespace, target_resource])
rescue StandardError
  nil
end

#target_resourceObject



11
12
13
# File 'app/fields/yummy_guide/administrate/fields/version_item_field.rb', line 11

def target_resource
  @target_resource ||= resolve_target_resource
end