Method: Datagrid::Columns::ClassMethods#decorate
- Defined in:
- lib/datagrid/columns.rb
#decorate(model = nil, &block) ⇒ void
This method returns an undefined value.
Defines a model decorator that will be used to define a column value. All column blocks will be given a decorated version of the model.
342 343 344 345 346 347 348 349 350 351 352 |
# File 'lib/datagrid/columns.rb', line 342 def decorate(model = nil, &block) if !model && !block raise ArgumentError, "decorate needs either a block to define decoration or a model to decorate" end return self.decorator = block unless model return model unless decorator presenter = ::Datagrid::Utils.apply_args(model, &decorator) presenter = presenter.new(model) if presenter.is_a?(Class) block_given? ? yield(presenter) : presenter end |