Class: Trestle::Table::Automatic
- Inherits:
-
Trestle::Table
- Object
- Trestle::Table
- Trestle::Table::Automatic
- Defined in:
- lib/trestle/table/automatic.rb
Instance Attribute Summary
Attributes inherited from Trestle::Table
Instance Method Summary collapse
- #actions_column ⇒ Object
- #columns ⇒ Object
- #content_columns ⇒ Object
-
#initialize(admin) ⇒ Automatic
constructor
A new instance of Automatic.
Methods inherited from Trestle::Table
Constructor Details
#initialize(admin) ⇒ Automatic
Returns a new instance of Automatic.
4 5 6 7 |
# File 'lib/trestle/table/automatic.rb', line 4 def initialize(admin) super(sortable: true, admin: admin) @admin = admin end |
Instance Method Details
#actions_column ⇒ Object
30 31 32 |
# File 'lib/trestle/table/automatic.rb', line 30 def actions_column ActionsColumn.new(self) end |
#columns ⇒ Object
9 10 11 |
# File 'lib/trestle/table/automatic.rb', line 9 def columns content_columns + [actions_column] end |
#content_columns ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/trestle/table/automatic.rb', line 13 def content_columns @admin.default_attributes.map.with_index do |attribute, index| next if attribute.inheritance_column? next if attribute.counter_cache? if attribute.association? Column.new(self, attribute.association_name, sort: false) elsif attribute.text? Column.new(self, attribute.name, link: index.zero?) do |instance| truncate(instance.public_send(attribute.name)) end else Column.new(self, attribute.name, link: index.zero?, align: (:center if attribute.datetime? || attribute.boolean?)) end end.compact end |