在 parents 和孩子 table laravel 中插入行

Insert row in parents and childs table laravel

我好迷茫。我有 table,名为 Navbar 的模型和控制器。这里我创建了导航栏按钮。我把 child table 叫做“type_1”。所以“导航栏”id 转到 table“type_1”及其名为“navbar_id”的列。

        $form_data = array(
        'tipas'    => $tipas,
        'p_id'     => $p_id,
        'name'     => $request->title,
        'text'     => $request->text,
        'img'      => $name
    );

    navbar::create($form_data); //created parent row

此处创建了导航栏按钮。如何使用 parent(导航栏)id 创建 childs 空行?我应该使用模型还是可以在这里做?

在您的 Parent 模型上,您需要定义如下关系:

public function child()
{
    return $this->hasMany(Child::class);
}

现在您可以使用 eloquent 方法插入数据,如下所示:

$form_data = array(
  'tipas' => $tipas,
  'p_id' => $p_id,
  'name' => $request->title,
  'text' => $request->text,
  'img'  => $name
);

$q = Parent::create($form_data); //created parent row
$q->child()->create(['name' => 'John', 'email' => 'me@john.com']); // here parent_id will be created by the model

the create method

的官方文档