如何通过迁移将关联添加到已创建的关系中?

Vai*_*put 3 activerecord ruby-on-rails associations

我创建了 2 个表studentsissued_books. 但在创建表时忘记添加t.belongs_to :students迁移issued_books

现在我将对应的模型修改为:

class Student < ActiveRecord::Base
has_many :issued_book
end

class IssuedBook < ActiveRecord::Base
belongs_to :student
end
Run Code Online (Sandbox Code Playgroud)

我现在该如何通过 Rails 迁移来做到这一点?

Lau*_*ens 5

$ bin/rails generate migration AddUserRefToProducts user:references
generates
Run Code Online (Sandbox Code Playgroud)

将生成以下内容:

class AddUserRefToProducts < ActiveRecord::Migration[5.0]
  def change
    add_reference :products, :user, index: true, foreign_key: true
  end
end
Run Code Online (Sandbox Code Playgroud)

来源: http: //edgeguides.rubyonrails.org/active_record_migrations.html

所以在你的情况下它将是:

$ bin/rails generate migration AddStudentRefToIssuedBooks student:references
Run Code Online (Sandbox Code Playgroud)