1

使用具有多个外键的表设置表和模型的标准方法是什么。

示例一外键关系通常看起来像

database tables:

clients
    id
    name
doctors
    id
    name
client_doctor
    client_id
    doctor_id

但是对于我的示例,一个医生也可能与多个诊所相关联,并且每个诊所可能有多种类型。

我想重构我的表格以反映 laravel 标准,但目前我的表格看起来像

clients
doctors
clinics
doctypes
doctor_clinic_doctype
    doctor_id
    clinic_id
    doctype_id
client_doctor_clinic_type
    client_id
    the three columns from doctor_clinic_type as a foreign key

这里的最佳做法是什么。

4

1 回答 1

1

由于 Eloquent 还会为数据透视表提供一个 id 列,您可以在该 id 上进行匹配。

所以表格可能看起来像这样。

doctor_clinic_doctype
    id
    doctor_id
    clinic_id
    doctype_id

client_doctor_clinic_type
    client_id
    doctor_clinic_doctype_id (foreign key on doctor_clinic_doctype.id)

我认为这可能是唯一适用于 Eloquent 的解决方案(虽然不确定)。

于 2013-06-06T20:41:20.267 回答