module Sequel::Plugins::InsertReturningSelect::ClassMethods
Attributes
The dataset to use to insert new rows. For internal use only.
Private Instance Methods
Source
# File lib/sequel/plugins/insert_returning_select.rb 51 def insert_returning_columns(ds) 52 return unless ds.supports_returning?(:insert) 53 return unless values = ds.opts[:select] 54 55 values = values.map{|v| ds.unqualified_column_for(v)} 56 if values.all? 57 values 58 end 59 end
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.
Source
# File lib/sequel/plugins/insert_returning_select.rb 36 def reset_instance_dataset 37 ret = super 38 return unless ds = @instance_dataset 39 40 if columns = insert_returning_columns(ds) 41 ds = ds.returning(*columns) 42 end 43 @instance_insert_dataset = ds 44 45 ret 46 end
When reseting the instance dataset, also reset the instance_insert_dataset.
Calls superclass method