Added DB uniqueness constraint on order_id to shipments

By forbidding more than a row per order in the spree_shipments table we ensure all orders have no more than one shipment associated
This commit is contained in:
luisramos0
2018-09-10 17:02:50 +01:00
parent 3577f3790d
commit c00e6a5dc7
2 changed files with 8 additions and 2 deletions

View File

@@ -0,0 +1,6 @@
class AddUniquenessOfOrderIdToSpreeShipments < ActiveRecord::Migration
def change
remove_index :spree_shipments, :order_id
add_index :spree_shipments, :order_id, unique: true
end
end

View File

@@ -11,7 +11,7 @@
#
# It's strongly recommended to check this file into your version control system.
ActiveRecord::Schema.define(:version => 20180812214434) do
ActiveRecord::Schema.define(:version => 20180910155506) do
create_table "account_invoices", :force => true do |t|
t.integer "user_id", :null => false
@@ -876,7 +876,7 @@ ActiveRecord::Schema.define(:version => 20180812214434) do
end
add_index "spree_shipments", ["number"], :name => "index_shipments_on_number"
add_index "spree_shipments", ["order_id"], :name => "index_spree_shipments_on_order_id"
add_index "spree_shipments", ["order_id"], :name => "index_spree_shipments_on_order_id", :unique => true
create_table "spree_shipping_categories", :force => true do |t|
t.string "name"