module Sequel::Plugins::InputTransformer::ClassMethods

Attributes

input_transformer_order[R]

The order in which to call the input transformers.

input_transformers[R]

Hash of input transformer name symbols to transformer callables.

Public Instance Methods

add_input_transformer(transformer_name, &block) click to toggle source

Add an input transformer to this model.

# File lib/sequel/plugins/input_transformer.rb, line 49
def add_input_transformer(transformer_name, &block)
  raise(Error, 'must provide both transformer name and block when adding input transformer') unless transformer_name && block
  @input_transformers[transformer_name] = block
  @input_transformer_order.unshift(transformer_name)
  @skip_input_transformer_columns[transformer_name] = []
end
skip_input_transformer(transformer_name, *columns) click to toggle source

Set columns that the transformer should skip.

# File lib/sequel/plugins/input_transformer.rb, line 57
def skip_input_transformer(transformer_name, *columns)
  @skip_input_transformer_columns[transformer_name].concat(columns).uniq!
end
skip_input_transformer?(transformer_name, column) click to toggle source

Return true if the transformer should not be called for the given column.

# File lib/sequel/plugins/input_transformer.rb, line 62
def skip_input_transformer?(transformer_name, column)
  @skip_input_transformer_columns[transformer_name].include?(column)
end