Laravel 使用一个表单在两个表中创建一行。如何添加连接它们的ID?

Laravel 使用一个表单在两个表中创建一行。如何添加连接它们的ID?,laravel,laravel-5,Laravel,Laravel 5,我使用的是laravel 5.6,我试图在两个不同的表中插入一行,并在公共函数存储()中将它们链接在一起 以下是我所拥有的: public function store(Request $request) { $this->validate($request, [ 'name' => 'required', 'email' => 'required', 'proje

我使用的是laravel 5.6,我试图在两个不同的表中插入一行,并在
公共函数存储()中将它们链接在一起

以下是我所拥有的:

public function store(Request $request)
    {
        $this->validate($request, [
          'name'         => 'required',
          'email'        => 'required',
          'project'      => 'required',
          'project_type' => 'required',
          'budget'       => 'required'
        ]);

        $client = new Client;
        $project = new Project;

        $client->name       = $request->input('name');
        $client->email      = $request->input('email');
        $client->save();

        $project->project      = $request->input('project');
        $project->project_type = $request->input('project_type');
        $project->budget       = $request->input('budget');
        $project->save();

        return redirect('/admin/clients');
    }
我需要做一些事情,比如:

$client->project_id = $project->id;
$project->client_id = $client->id;
但这显然行不通。当这些行尚未创建以访问它们时,我将如何获取这些行的ID?可能吗?如果没有,我会找到一个解决办法,或者用另一种方式


谢谢。

如果您创建的表允许项目id客户端id,则在保存客户端和项目后添加以下代码片段:

$client->project_id = $project->id;
$client->save();
$project->client_id = $client->id;
$project->save();

但我建议您在客户机或项目中的另一个表中使用一个外键,但不能同时使用这两个外键


然后,您可以定义雄辩的一对一()关系,以获取另一个表的记录。

如果您创建的表允许项目id客户idnull,则在保存客户机和项目后添加以下代码段:

$client->project_id = $project->id;
$client->save();
$project->client_id = $client->id;
$project->save();

但我建议您在客户机或项目中的另一个表中使用一个外键,但不能同时使用这两个外键


然后,您可以定义雄辩的一对一()关系来获取另一个表的记录。

为什么两行都需要对方的ID?为什么两行都需要对方的ID?