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
25 26 27 |
# File 'lib/sequel/plugins/string_stripper.rb', line 25 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
28 29 30 |
# File 'lib/sequel/plugins/string_stripper.rb', line 28 def self.configure(model) model.instance_eval{set_skipped_string_stripping_columns if @dataset} end |