我有示例workers
表结构:
我有两种类型的工作人员:公司工作人员和公司分支机构工作人员。 “类型”字段只能是: 1 或 2 。 1-是公司员工,2-是分支机构员工。现在如何无法编写正确的关系方法来获取用户公司类型(分支机构或公司)。还是我必须创建2个表(company_workers_table和company_branch_workers_table)才能正确编写雄辩的关系?
答案 0 :(得分:3)
您正在寻找一种多态关系:
https://laravel.com/docs/5.6/eloquent-relationships#polymorphic-relations
您想用两列而不是仅用类型一来设置您的工作程序,让我们将此关系称为MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(video.getPath());
mediaPlayer.prepare();
mediaPlayer.start();
。您的workplace
表将包含workers
和workplace_id
列。类型列包含相关模型的类(即workplace_type
),而您的id列包含相关模型的ID,因此工作人员可能与公司或公司分支机构相关。
您的模型将如下所示:
App/Company