插入流明中的多个表 (laravel)

Insert into multiple tables in lumen (laravel)

我尝试将一些数据插入到 2 个带有 lumen 的表中。我使用流明作为 REST Api.

这是我做的:

创建路线:

$router->group(['prefix' => 'fp'], function () use ($router) {
    $router->post('/OnUVCreate/{idfach}/{idjahrgang}/{SendUVorhaben}', 'UVCreateController@postuvorhaben'); 
});

我的控制器:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;

class UVCreateController extends Controller
{
    
    public function postuvorhaben($idfach, $idjahrgang, $SendUVorhaben)
     {
     
       $dbuvorhaben = DB::table('uvorhaben')
            ->insert(
            ['uvorhaben'=> $SendUVorhaben]
            );
       $id = DB::getPdo()->;
       $dbfju = DB::table('faecherJahrgangUvorhaben')
            ->insert(
            ['fachID'=> $idfach],
            ['jahrgangID'=> $idjahrgang],
            ['uvorhabenID'=> $id]
            );
            
            
             return response()->json(['message' => 'ok'], 200);
     }
    
    
}

一半有效。第一个插入工作正常。第二个插入不起作用。他插入“fachID”是正确的,但“jahrgangID”和“uvorhabenID” 他没有插入。

抱歉我的英语不好,非常感谢您的帮助! 问候 萨沙

插入方法 faecherJahrgangUvorhaben table 是错误的。我猜你已经为单个插入创建了多个数组。

$dbfju = DB::table('faecherJahrgangUvorhaben')
            ->insert(
            [
            'fachID'=> $idfach,
            'jahrgangID'=> $idjahrgang,
            'uvorhabenID'=> $id
           ]
            );

我建议您为每个 table.So 创建模型,这将避免冗余 code.For 示例假设如果 db table 名称更改,那么您已经更改了多个位置。