Ruby on rails 在模型关系中指定不同的外键
我有两个模特,一个是员工,一个是医院,在一个有很多关系的地方。医院有很多员工。我的员工表如下所示:Ruby on rails 在模型关系中指定不同的外键,ruby-on-rails,Ruby On Rails,我有两个模特,一个是员工,一个是医院,在一个有很多关系的地方。医院有很多员工。我的员工表如下所示: class CreateStaffs < ActiveRecord::Migration[5.1] def change create_table :staffs do |t| t.string :Title t.string :FirstName . . . t.integer :hospital_id
class CreateStaffs < ActiveRecord::Migration[5.1]
def change
create_table :staffs do |t|
t.string :Title
t.string :FirstName
.
.
.
t.integer :hospital_id
t.timestamps
end
end
end
create_table :staffs do |t|
...
t.string :hospital_name
end
add_foreign_key :staffs, :hospitals, column: :hospital_name, primary_key: :name
class CreateStaff
我不能指定其他外键,例如医院名称吗
谢谢您需要创建如下表:
class CreateStaffs < ActiveRecord::Migration[5.1]
def change
create_table :staffs do |t|
t.string :Title
t.string :FirstName
.
.
.
t.integer :hospital_id
t.timestamps
end
end
end
create_table :staffs do |t|
...
t.string :hospital_name
end
add_foreign_key :staffs, :hospitals, column: :hospital_name, primary_key: :name
其中使用
primary\u key::name
引用hospitals
表的列名。我真的不鼓励您在Rails中使用驼峰案例名称。您应该将Title
重命名为Title
并将FirstName
重命名为FirstName
谢谢您的建议@coorassed您是否在“员工”表中有一个字段hospital\u name
?或者你打算添加它吗?我想删除医院id,改用医院名@JagdeepSingh