Sha256: b5e653a9fdc3a95709c56bd563230e67ca9fce473d4742cc1c5fd274fd5c50ad

Contents?: true

Size: 1.76 KB

Versions: 38

Compression:

Stored size: 1.76 KB

Contents

class SpreePromoOneTwo < ActiveRecord::Migration
  def up
    # This migration is just a compressed migration for all previous versions of spree_promo
    return if table_exists?(:spree_products_promotion_rules)

    create_table :spree_products_promotion_rules, :id => false, :force => true do |t|
      t.references :product
      t.references :promotion_rule
    end

    add_index :spree_products_promotion_rules, [:product_id], :name => 'index_products_promotion_rules_on_product_id'
    add_index :spree_products_promotion_rules, [:promotion_rule_id], :name => 'index_products_promotion_rules_on_promotion_rule_id'

    create_table :spree_promotion_action_line_items, :force => true do |t|
      t.references :promotion_action
      t.references :variant
      t.integer    :quantity,            :default => 1
    end

    create_table :spree_promotion_actions, :force => true do |t|
      t.references :activator
      t.integer    :position
      t.string     :type
    end

    create_table :spree_promotion_rules, :force => true do |t|
      t.references :activator
      t.references :user
      t.references :product_group
      t.string     :type
      t.timestamps null: false
    end

    add_index :spree_promotion_rules, [:product_group_id], :name => 'index_promotion_rules_on_product_group_id'
    add_index :spree_promotion_rules, [:user_id], :name => 'index_promotion_rules_on_user_id'

    create_table :spree_promotion_rules_users, :id => false, :force => true do |t|
      t.references :user
      t.references :promotion_rule
    end

    add_index :spree_promotion_rules_users, [:promotion_rule_id], :name => 'index_promotion_rules_users_on_promotion_rule_id'
    add_index :spree_promotion_rules_users, [:user_id], :name => 'index_promotion_rules_users_on_user_id'
  end
end

Version data entries

38 entries across 38 versions & 2 rubygems

Version Path
goca-spree-core-3.1.14.rails.5.0.1 db/migrate/20120831092359_spree_promo_one_two.rb
goca-spree-core-3.1.14.rails.5.0 db/migrate/20120831092359_spree_promo_one_two.rb
goca-spree-core-3.1.15.rails.5.0 db/migrate/20120831092359_spree_promo_one_two.rb
goca-spree-core-3.1.15.pre.rails.pre.5.0 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.14 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.13 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.12 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.11 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.10 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.9 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.8 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.7 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.6 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.5 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.4 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.3 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.2 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.0.10 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.1 db/migrate/20120831092359_spree_promo_one_two.rb
spree_core-3.1.0 db/migrate/20120831092359_spree_promo_one_two.rb