स्थानीय देव के लिए sqlite3 के साथ काम कर रहा है। प्रोड डीबी MySQL है।रेल माइग्रेशन और कॉलम चेंज
कॉलम परिवर्तन के लिए माइग्रेशन फ़ाइल है।
class ChangeDateToOrders < ActiveRecord::Migration
def self.up
change_column(:orders, :closed_date, :datetime)
end
def self.down
change_column(:orders, :closed_date, :date)
end
end
त्रुटियाँ बाहर कह index name 'temp_index_altered_orders_on_closed_location_id_and_parent_company_id' on table 'altered_orders' is too long; the limit is 64 characters
पता SQLite के साथ सूचकांक नाम पर एक सीमा होती है, लेकिन इसके लिए एक समाधान नहीं है?
संपादित वर्कअराउंड मैं का इस्तेमाल किया।
class ChangeDateToOrders < ActiveRecord::Migration
def self.up
remove_index(:orders, [:closed_location_id, :parent_company_id])
change_column(:orders, :closed_date, :datetime)
add_index(:orders, [:closed_location_id, :parent_company_id], :name => "add_index_to_orders_cli_pci")
end
def self.down
remove_index(:orders, :name => "add_index_to_orders_cli_pci")
change_column(:orders, :closed_date, :date)
add_index(:orders, [:closed_location_id, :parent_company_id])
end
end