Laravel:当我的外键在数组中时,如何在模型中添加关系?

时间:2018-09-22 08:31:38

标签: php laravel foreign-keys relationship

我有一个表,需要在其中将ID保存在数组中,您可以在其中查看项目 events_who是一个外键。我可以在模型中创建一个关系来从外键获取数据的解决方案吗?我试过belongsToMany,它不起作用。 :(

enter image description here

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

假设我们有2个模型:EventPerson 并且Person可以参与多个Event

基于上述关系,您需要创建一个名为event_person的数据透视表,并在两个模型中定义两个belongsToMany()关系:

Person模型中,关系如下:

public function events()
{
    return $this->belongsToMany(Event::class, 'event_person');
}

答案 1 :(得分:0)

Laravel / MySQL(关系数据库)实际上并不是这种方式。在这种情况下,您应该签出Many to Many Relationships

示例表格架构/布局:

users
|id|name|password|

events
|id|title|body|

event_user (pivot table)
|event_id|user_id|

通常,一列中没有数组,您应该使用表。此外,通常,外键是表名(单数),后跟_id。