Sha256: 9aa15fbbc5fdfb0cc72ba10960ecd74ed06b3c2bee963e6586ccd342aa7f234b

Contents?: true

Size: 938 Bytes

Versions: 3

Compression:

Stored size: 938 Bytes

Contents

#---
# Excerpted from "Agile Web Development with Rails, 2nd Ed."
# We make no guarantees that this code is fit for any purpose. 
# Visit http://www.pragmaticprogrammer.com/titles/rails2 for more book information.
#---
class CreateLineItems < ActiveRecord::Migration
  def self.up
    create_table :line_items do |t|
      t.column :product_id,  :integer, :null => false
      t.column :order_id,    :integer, :null => false
      t.column :quantity,    :integer, :null => false
      t.column :total_price, :decimal, :null => false, :precision => 8, :scale => 2
    end

    execute "alter table line_items 
               add constraint fk_line_item_products 
               foreign key  (product_id) references products(id)"

    execute "alter table line_items 
               add constraint fk_line_item_orders
               foreign key  (order_id) references orders(id)"
  end

  def self.down
    drop_table :line_items
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
amrita2-2.0.0 sample/depot/db/migrate/006_create_line_items.rb
amrita2-2.0.1 sample/depot/db/migrate/006_create_line_items.rb
amrita2-2.0.2 sample/depot/db/migrate/006_create_line_items.rb