Module: Sequel::Plugins::NestedAttributes

Defined in:
lib/sequel/lib/sequel/plugins/nested_attributes.rb

Overview

The nested_attributes plugin allows you to update attributes for associated objects directly through the parent object, similar to ActiveRecord's Nested Attributes feature.

Nested attributes are created using the nested_attributes method:

Artist.one_to_many :albums
Artist.nested_attributes :albums
a = Artist.new(:name=>'YJM',
 :albums_attributes=>[{:name=>'RF'}, {:name=>'MO'}])
# No database activity yet

a.save # Saves artist and both albums
a.albums.map{|x| x.name} # ['RF', 'MO']

Defined Under Namespace

Modules: ClassMethods, InstanceMethods

Class Method Summary collapse

Class Method Details

.apply(model) ⇒ Object

Depend on the instance_hooks plugin.


19
20
21
# File 'lib/sequel/lib/sequel/plugins/nested_attributes.rb', line 19

def self.apply(model)
  model.plugin(:instance_hooks)
end