將引用列新增到表中
要將 team
的引用新增到 users
表,請執行以下命令:
$ rails generate migration AddTeamRefToUsers team:references
這會生成以下遷移:
class AddTeamRefToUsers < ActiveRecord::Migration[5.0]
def change
add_reference :users, :team, foreign_key: true
end
end
該遷移將在 users
表中建立一個 team_id
列。
如果要在新增的列上新增適當的 index
和 foreign_key
,請將命令更改為 rails generate migration AddTeamRefToUsers team:references:index
。這將生成以下遷移:
class AddTeamRefToUsers < ActiveRecord::Migration
def change
add_reference :users, :team, index: true
add_foreign_key :users, :teams
end
end
如果你想為 Rails 自動生成的引用列命名,請在遷移中新增以下內容:(例如:你可能想要在 Post
表中呼叫建立 Post
的 Post
作為 Author
)
class AddAuthorRefToPosts < ActiveRecord::Migration
def change
add_reference :posts, :author, references: :users, index: true
end
end