【发布时间】:2018-12-19 20:16:14
【问题描述】:
大家好,我正在处理多对多关系,我想知道是否有任何方法可以删除主表的记录。
这是我的桌子
Schema::create('inventario_inicial', function (Blueprint $table) {
$table->increments('id');
$table->integer('producto_nombre_id')->unsigned();
$table->foreign('producto_nombre_id')->references('id')->on('producto_nombre');
$table->integer('existencias');
$table->double('promedio');
$table->timestamps();
});
Schema::create('empresa_inventario_inicial', function (Blueprint $table) {
$table->integer('empresa_id')->unsigned();
$table->foreign('empresa_id')->references('id')->on('empresas');
$table->integer('inventario_inicial_id')->unsigned();
$table->foreign('inventario_inicial_id')->references('id')->on('inventario_inicial');
});
我可以使用此代码通过数据透视获取数据
$empresa = Empresa::find($request->empresa_id);
$empresa->inventario_inicial();
要分离 $empresa 的数据,我使用 $empresa->inventario_inicial()->detach();
它删除了数据透视表的记录是正确的,但我不仅要删除 empresa_inventario_inicial 中的内容,还要删除相关的 inventario_inicial 中的内容。类似于级联删除但从数据透视表中删除的东西。
【问题讨论】:
标签: php laravel laravel-5 eloquent