Мне нужно сделать столбец как внешний ключ. Я много исследовал его. Я понял, что мне нужно добавить ассоциации. Я совершенно понятен в параметрах belongs_to, has_one и has_many. После создания ассоциаций рельсы знают, что существует ассоциация внешних ключей. Если я удалю основную запись, тогда зависимая запись будет удалена приложением rails. я читал о миграции, и я наткнулся на http://edgeguides.rubyonrails.org/active_record_migrations.html где упоминается: $ Bin/рельсы генерировать миграции AddUserRefToProducts пользователей: ссылкипосле добавления ассоциаций и индекса мне нужно явно использовать ключевое слово foreign_key для создания внешнего ключа столбца в приложении ruby-on-rails
сгенерирует:
class AddUserRefToProducts < ActiveRecord::Migration
def change
add_reference :products, :user, index: true, foreign_key: true
end
end
Сейчас на сайте: http://guides.rubyonrails.org/active_record_migrations.html , где это упоминается: $ bin/rails генерировать миграцию AddUserRefToProducts пользователя: ссылки
будет генерировать:
class AddUserRefToProducts < ActiveRecord::Migration
def change
add_reference :products, :user, index: true
end
end
Я понимаю создание индекса. Нужно ли иметь foreign_key: true явно или нет? какая разница?