у меня есть:mysql2 :: Ошибка: Ключ столбец 'hotel_user_id' не существует в таблице
def change
create_table :orders do |t|
t.string :name
t.text :address,:limit=>500
t.string :email
t.string :pay_type
t.string :phone,:limit=>25
t.integer :hotel_user_id
t.timestamps
end
add_index("hotel_users","hotel_user_id")
end
Ошибка в журнале:
$ rake db:migrate
== 20140822140639 CreateOrders: migrating ====================================
-- create_table(:orders)
-> 0.0790s
-- add_index("hotel_users", "hotel_user_id")
rake aborted!
StandardError: An error has occurred, all later migrations canceled:
Mysql2::Error: Key column 'hotel_user_id' doesn't exist in table: CREATE INDEX index_hotel_users_on_hotel_user_id` ON 'hot
el_users' ('hotel_user_id') F:/OrderBooking/db/migrate/20140822140639_create_orders.rb:12:in 'change'
c:in 'migrate'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)'
У меня есть таблица hotel_users
, которая имеет много orders
. Я заказываю таблицу, я хочу установить внешний ключ. Но я получаю указанную выше ошибку при создании таблицы.
'hotel_users' миграция существует? Я думаю, что ваша колонка еще не существует. –
этот вопрос похож на [см] [1] [1]: http://stackoverflow.com/questions/18673193/need-to-use-add-index-on-migration-for -belongs-to-has-many-relationship-rails –