ROR postgres upsert hash

Я пытаюсь закрепить этот ряд:

schema.db

t.text "address_field"

address.rb

serialize :address_field, Hash

файл миграции

enable_extension 'hstore' unless extension_enabled?('hstore')

values = []
Address.find_each do |address|
    new_address_field = {first_line => "Street", second_line => "City" }
    values << [{id: address.id}, {address_field: new_address_field}]
end

Upsert.batch(Address.connection, Address.table_name) do |upsert|
  values.each do |p|
    upsert.row(p[0], p[1])
  end
end

Ошибка, которую я получаю:

nameError: uninitialized constant PgHstore

1 ответ

Это проблема с upsert и postgresql. их команда работает над чем-то для этого, но пока я не читал никаких новостей.

https://github.com/seamusabshere/upsert/issues/60

Вы можете попытаться перенести ваши данные в другую базу данных.

Другие вопросы по тегам