module Sequel::Plugins::InsertReturningSelect::ClassMethods
Attributes
instance_insert_dataset[R]
The dataset to use to insert new rows. For internal use only.
Private Instance Methods
insert_returning_columns(ds)
click to toggle source
Determine the columns to use for the returning clause, or return nil if they can't be determined and a returning clause should not be added automatically.
# File lib/sequel/plugins/insert_returning_select.rb, line 49 def insert_returning_columns(ds) return unless ds.supports_returning?(:insert) return unless values = ds.opts[:select] values = values.map{|v| ds.unqualified_column_for(v)} if values.all? values end end
reset_instance_dataset()
click to toggle source
When reseting the instance dataset, also reset the instance_insert_dataset.
Calls superclass method
# File lib/sequel/plugins/insert_returning_select.rb, line 34 def reset_instance_dataset ret = super ds = @instance_dataset if columns = insert_returning_columns(ds) ds = ds.returning(*columns) end @instance_insert_dataset = ds ret end