Module: LcpRuby::DisplayTemplateHelper
- Defined in:
- app/helpers/lcp_ruby/display_template_helper.rb
Instance Method Summary collapse
-
#render_display_template(record, model_definition, template_name: "default", permission_evaluator: nil, link_to_record: false, presenter_slug: nil) ⇒ ActiveSupport::SafeBuffer
Render a display template for a record.
Instance Method Details
#render_display_template(record, model_definition, template_name: "default", permission_evaluator: nil, link_to_record: false, presenter_slug: nil) ⇒ ActiveSupport::SafeBuffer
Render a display template for a record.
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'app/helpers/lcp_ruby/display_template_helper.rb', line 12 def render_display_template(record, model_definition, template_name: "default", permission_evaluator: nil, link_to_record: false, presenter_slug: nil) return "".html_safe if record.nil? template_def = model_definition.display_template(template_name) if template_def.nil? # Fallback: escaped to_label, optionally linked label = ERB::Util.html_escape(record.respond_to?(:to_label) ? record.to_label : record.to_s) return wrap_in_link(label, record, presenter_slug, model_definition) if link_to_record return label end case template_def.form when :structured render_structured_template(record, model_definition, template_def, , link_to_record, presenter_slug) when :renderer render_renderer_template(record, template_def) when :partial render partial: template_def.partial, locals: { record: record } end end |