Class: CrudComponents::Fields::ComputedField
- Defined in:
- lib/crud_components/fields/computed_field.rb
Overview
A name Rails doesn’t know: a public model method (rendered by its value type) or a declared render block. Query behavior only through facets —a Ruby-computed value has no SQL meaning until a facet gives it one.
Direct Known Subclasses
Constant Summary
Constants inherited from Base
Instance Attribute Summary
Attributes inherited from Base
#facets, #model, #name, #options
Instance Method Summary collapse
Methods inherited from Base
#apply_derived_filter, #apply_filter, #apply_filter_facet, #apply_sort, #column, #custom_header?, #declared_preloads, #default_editable?, #derived_filter_control, #derived_filterable?, #derived_sortable?, #eager_load, #editable?, #editable_permitted?, #filter_choices, #filter_control, #filter_facet, #filter_includes_null?, #filterable?, #form_control, #form_partial, #group_label, #group_model, #header, #header_actions, #human_name, #initialize, #nullable?, #permit_param, #permitted?, #picker_label, #range_filter?, #render_block, #renderer_options, #sort_facet, #sortable?
Constructor Details
This class inherits a constructor from CrudComponents::Fields::Base
Instance Method Details
#default_renderer ⇒ Object
14 |
# File 'lib/crud_components/fields/computed_field.rb', line 14 def default_renderer = :string |
#renderer(record = nil) ⇒ Object
7 8 9 10 11 12 |
# File 'lib/crud_components/fields/computed_field.rb', line 7 def renderer(record = nil) return [:as] if [:as] return nil if render_block record ? renderer_for_value(value(record)) : :string end |
#value(record) ⇒ Object
16 17 18 |
# File 'lib/crud_components/fields/computed_field.rb', line 16 def value(record) render_block ? nil : record.public_send(name) end |