Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php FK引用多个表。Laravel中的数据库关系和外键约束_Php_Mysql_Laravel - Fatal编程技术网

Php FK引用多个表。Laravel中的数据库关系和外键约束

Php FK引用多个表。Laravel中的数据库关系和外键约束,php,mysql,laravel,Php,Mysql,Laravel,我有一个“文件”表(id、名称、路径、所有者)。我想将所有者列链接到多个表(学生、主管…)。例如,文件的所有者可以是学生、主管或评估委员会。既然我不能将外键引用到多个表,那么这个问题的有效解决方案是什么?您最好使用多态关系 或者,您可以有一个用户表,并使用类似于的方式为用户提供不同的角色。您可以为每个可能的所有者提供单独的连接表,或者重组数据库,以便学生、主管和委员会表都位于一个“用户”表中(并通过用户类型字段进行区分);具有可选的学生详细信息、员工详细信息和/或委员会详细信息表,以获取不同类

我有一个“文件”表(id、名称、路径、所有者)。我想将所有者列链接到多个表(学生、主管…)。例如,文件的所有者可以是学生、主管或评估委员会。既然我不能将外键引用到多个表,那么这个问题的有效解决方案是什么?

您最好使用多态关系


或者,您可以有一个用户表,并使用类似于

的方式为用户提供不同的角色。您可以为每个可能的所有者提供单独的连接表,或者重组数据库,以便学生、主管和委员会表都位于一个“用户”表中(并通过用户类型字段进行区分);具有可选的学生详细信息、员工详细信息和/或委员会详细信息表,以获取不同类型的独特信息。这可能是一个良好的开端: