active_record_bulk_insert
active_record_bulk_insert copied to clipboard
Exposes a bulk insert API to AR subclasses
If the records passed to `bulk_insert` have their keys in different orders, the values will be inserted into incorrect columns. This ensures that the value strings are always built in...
NoMethodError: undefined method `oid' for # /home/.rvm/gems/ruby-2.4.4/gems/activerecord-5.1.6/lib/active_record/connection_adapters/postgresql/quoting.rb:76:in `lookup_cast_type_from_column' home/.rvm/gems/ruby-2.4.4/gems/activerecord-5.1.6/lib/active_record/connection_adapters/abstract/quoting.rb:59:in `type_cast_from_column' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:47:in `_bulk_insert_quote' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:28:in `block (2 levels) in bulk_insert' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:27:in `each' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:27:in `map' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:27:in `block in bulk_insert' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:26:in `map' /home/.rvm/gems/ruby-2.4.4/gems/active_record_bulk_insert-1.3.1/lib/active_record_bulk_insert.rb:26:in `bulk_insert'
ActiveRecord::StatementInvalid: PG::SyntaxError: ERROR: VALUES lists must all be the same length
Once run `bulk_insert` with non constant attributes count records = [ { :name => "Foo", :age => 30 }, { :name => "Bar" } ] expect {SampleRecord.bulk_insert(records)}.to change{SampleRecord.count}.by(records.size) It fails...
My model class has enum(status column default value is 0): ```ruby class NodeType < ApplicationRecord enum status: { times: 0, monthly: 1 }, _prefix: :status end ``` ```ruby NodeType.bulk_insert([{name: 'a'},...