Class: BrainDamage::View::Display::LinkTo
- Inherits:
-
Base
- Object
- Templateable::Base
- Templateable::FieldTemplateable
- Base
- BrainDamage::View::Display::LinkTo
- Defined in:
- lib/generators/brain_damage/lib/views/displays/link_to.rb
Instance Attribute Summary
Attributes inherited from Templateable::FieldTemplateable
Attributes inherited from Templateable::Base
#inner_html, #options, #template_file
Instance Method Summary collapse
- #include_existance_check? ⇒ Boolean
-
#initialize(field, options) ⇒ LinkTo
constructor
A new instance of LinkTo.
- #link_target ⇒ Object
- #link_text ⇒ Object
Methods inherited from Base
Methods inherited from Templateable::FieldTemplateable
#empty_haml_path, #label_guard?, #method_missing, #render, #show?, #show_label?
Methods inherited from Templateable::Base
#indent, #method_missing, #render, #render_erb_file, #render_erb_string, #render_template_file
Constructor Details
#initialize(field, options) ⇒ LinkTo
Returns a new instance of LinkTo.
8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/generators/brain_damage/lib/views/displays/link_to.rb', line 8 def initialize(field, ) super @display_method = [:display_method] || name @target_method = [:target_method] || name if [:act_as_foreign] define_singleton_method :foreign?, lambda { true } end end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class BrainDamage::Templateable::FieldTemplateable
Instance Method Details
#include_existance_check? ⇒ Boolean
36 37 38 |
# File 'lib/generators/brain_damage/lib/views/displays/link_to.rb', line 36 def include_existance_check? foreign? end |
#link_target ⇒ Object
31 32 33 34 |
# File 'lib/generators/brain_damage/lib/views/displays/link_to.rb', line 31 def link_target return "#{singular_table_name}.#{@target_method}" if foreign? "#{singular_table_name}" end |
#link_text ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/generators/brain_damage/lib/views/displays/link_to.rb', line 20 def link_text text = if foreign? then "#{singular_table_name}.#{@target_method}.#{@display_method}" else "#{singular_table_name}.#{@display_method}" end return text if text.present? link_target end |