Sha256: 70cbf4479e85685b5c7ba77ab9bc8125e552fa8caad1d7526616cb5ef700f06d

Contents?: true

Size: 672 Bytes

Versions: 9

Compression:

Stored size: 672 Bytes

Contents

# This migration comes from spree (originally 20140309023735)
class MigrateOldPreferences < ActiveRecord::Migration
  def up
    migrate_preferences(Spree::Calculator)
    migrate_preferences(Spree::PaymentMethod)
    migrate_preferences(Spree::PromotionRule)
  end

  def down
  end

  private
  def migrate_preferences klass
    klass.reset_column_information
    klass.find_each do |record|
      store = Spree::Preferences::ScopedStore.new(record.class.name.underscore, record.id)
      record.defined_preferences.each do |key|
        value = store.fetch(key){}
        record.preferences[key] = value unless value.nil?
      end
      record.save!
    end
  end
end

Version data entries

9 entries across 9 versions & 5 rubygems

Version Path
spree_weight_calculator-0.1.0 test/dummy/db/migrate/20160723192563_migrate_old_preferences.spree.rb
spree_order_reporting-0.0.3 spec/dummy/db/migrate/20160708163160_migrate_old_preferences.spree.rb
sprangular-0.1.0 spec/dummy/db/migrate/20140814105762_migrate_old_preferences.spree.rb
sprangular-0.0.1 spec/dummy/db/migrate/20140814105762_migrate_old_preferences.spree.rb
spree_mercado_pago-0.2.3 spec/dummy/db/migrate/20141204014755_migrate_old_preferences.spree.rb
spree_mercado_pago-0.2.2 spec/dummy/db/migrate/20141204014755_migrate_old_preferences.spree.rb
spree_mercado_pago-0.2.1 spec/dummy/db/migrate/20141112193538_migrate_old_preferences.spree.rb
spree_mercado_pago-0.2.0 spec/dummy/db/migrate/20141112193538_migrate_old_preferences.spree.rb
spree_mercado_pago_payment_method-0.2.0 spec/dummy/db/migrate/20141112193538_migrate_old_preferences.spree.rb