Module: Sequel::Plugins::DefaultsSetter
- Defined in:
- lib/sequel/plugins/defaults_setter.rb
Overview
The defaults_setter plugin makes the column getter methods return the default values for new objects, if the values have not already been set. Example:
# column a default NULL
# column b default 2
album = Album.new
album.a # => nil
album.b # => 2
album = Album.new(:a=>1, :b=>3)
album.a # => 1
album.b # => 3
You can manually set default values as well:
Album.default_values[:a] = 4
Album.new.a # => 4
You can also provide procs to set default values:
Album.default_values[:a] = lambda{Date.today}
Album.new.a # => Date.today
Usage:
# Make all model subclass instances set defaults (called before loading subclasses)
Sequel::Model.plugin :defaults_setter
# Make the Album class set defaults
Album.plugin :defaults_setter
Defined Under Namespace
Modules: ClassMethods, InstanceMethods
Class Method Summary collapse
-
.configure(model) ⇒ Object
Set the default values based on the model schema.
Class Method Details
.configure(model) ⇒ Object
Set the default values based on the model schema
36 37 38 |
# File 'lib/sequel/plugins/defaults_setter.rb', line 36 def self.configure(model) model.send(:set_default_values) end |