自定义表主键

时间:2017-03-19 13:04:54

标签: ruby-on-rails

我需要帮助,我想知道约会表生成的外键是否会映射到患者医生表中

下面的代码
patients table 

create_table :patients, primary_key: :pat_id, id: :string do |t|
    t.string :name
end



physicians table

create_table :physicians, primary_key: :phys_id, id: :string do |t|
    t.string :name
end


appointment table

create_table :appointments, id:false do |t|
    t.belongs_to :patient, primary_key: :pat_id, foreign_key: :pat_id, index: true
    t.belongs_to :physician, primary_key: :phys, foreign_key: :pat_id, index: true
    t.datetime :appointment_date
end

当生成约会表时,我会看到 patient_id physician_id ,而不是 pat_id phys_id 即可。 好奇,请将此 patient_id 映射到 pat_id ,将 physicians_id 映射到 phys_id

1 个答案:

答案 0 :(得分:0)

TableDefinition 中的

belongs_toalias for references

改为使用t.belongs_to :pat