我有一个名为content_roles的“contents”和“roles”的连接表,这是连接表。
class CreateContentRoles < ActiveRecord::Migration
def change
create_table :content_roles, :id => false do |t|
t.belongs_to :content, foreign_key: "content_id"
t.belongs_to :roles, foreign_key: "role_id"
end
add_index :content_roles, ["content_id", "roles_id"]
end
end
因此,在各个角色和内容迁移中,我是否需要有一个返回连接表和/或角色/内容的foreign_key?对不起,我没有更好地解释这一点。
答案 0 :(得分:1)
为什么你不能使用如下所示的引用
class CreateContentRoles < ActiveRecord::Migration
def change
create_table :content_roles, :id => false do |t|
t.references :content, index: true, foreign_key: true
t.references :roles, index: true, foreign_key: true
t.timestamps null: false
end
end
end
答案 1 :(得分:0)
id
和content
表中的roles
列充当外键。 Rails使用content
表中的content_roles
和id
表中的content
加入content_id
和content_roles
表。 roles
和content_roles
表也是如此。