Module: Sequel::Plugins::StringStripper
- Defined in:
- lib/sequel/plugins/string_stripper.rb
Overview
StringStripper is a plugin that strips all input strings when assigning to the model’s values. Example:
album = Album.new(name: ' A ')
album.name # => 'A'
SQL::Blob instances and all non-strings are not modified by this plugin. Additionally, strings passed to a blob column setter are also not modified. You can explicitly set other columns to skip the stripping:
Album.skip_string_stripping :foo
Album.new(foo: ' A ').foo # => ' A '
Usage:
# Make all model subclass instances strip strings (called before loading subclasses)
Sequel::Model.plugin :string_stripper
# Make the Album class strip strings
Album.plugin :string_stripper
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Class Method Details
.apply(model) ⇒ Object
27 28 29 |
# File 'lib/sequel/plugins/string_stripper.rb', line 27 def self.apply(model) model.plugin(:input_transformer, :string_stripper){|v| (v.is_a?(String) && !v.is_a?(SQL::Blob)) ? v.strip : v} end |
.configure(model) ⇒ Object
30 31 32 |
# File 'lib/sequel/plugins/string_stripper.rb', line 30 def self.configure(model) model.send(:set_skipped_string_stripping_columns) end |