使用循环外键在 eloquent db 中添加两个元素

Adding in two elements in eloquent db with circular foreign keys

您好,我想知道如何在 eloquent php (laravel) 中创建两个外键形成循环结构的元素。 我有两个表,人员和操作,这些是结构(模型):

人:

key value
id bigint auto increment
name varchar(255)
last_action_id bigint

外键: last_action_id → 动作(id)

操作数:

key value
id bigint auto increment
description varchar(255)
person_id bigint

外键: person_id → 人(id)

我想创建一个新人his/her第一个动作。 有谁知道如何做到这一点。 提前致谢。

虽然您没有提供大量信息,但我不明白您为什么需要这样做。每个人都有很多动作,大概,所以建立相应的关系:

在你的 Person 模型中:

public function actions() { 
    return $this->hasMany(Action::class);
}

在您的 Action 模型中:

public function person() { 
    return $this->belongsTo(Person::class);
}

然后要检索他们的最后一个动作,您可以实例化您的人,获取他们的动作,然后使用以下方法检索最后一个动作:

$person->actions->last();