繁体   English   中英

Laravel-与其他关系的ManyToMany数据透视表

[英]Laravel - ManyToMany Pivot Table With Other Relationship

在Laravel 5.2中,可以说我在PostTag两个模型之间有一个ManyToMany关系(为示例起见)。 但是,它们之间的数据透视表也与另一个表有关系:

posts:
  id
  name:

tags:
  id
  name:

posts_tags:
   post_id
   tag_id
   priority_id

priorities
   id:
   value:

如您所见, posts_tags表示PostTag之间many-to-many关系。 但是,这种关系的实例与Priorities也存在One To Many关系

我该如何在Eloquent中建立这种关系?

暂时,我将我的ManyToMany保持在PostTag之间,但是,我现在只是将priority_id作为属性存储在数据透视表上。 Priority只有一个ID和一个Name ,因此我选择将Priority的映射存储在Laravel配置文件中。 因此,现在,当我提取特定PostTag记录时,我可以仅将priority_id提取为列并将其映射到配置中的值,而不是将这些数据作为显式关系存储在数据库中:

<?php

return [

   'priorities' => [
       1 => 'first value',
       2 => 'second value',
       3 => 'third value',
       // etc
    ]
];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM