php - 插入流明中的多个表(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
表的方法是错误的。我猜你已经为单个插入创建了多个数组。
$dbfju = DB::table('faecherJahrgangUvorhaben')
->insert(
[
'fachID'=> $idfach,
'jahrgangID'=> $idjahrgang,
'uvorhabenID'=> $id
]
);
我建议您为每个表创建模型。这样可以避免冗余代码。例如,假设如果 db 表名更改,那么您已经更改了多个位置。