【发布时间】:2021-04-28 08:39:34
【问题描述】:
每当我尝试将输入数组同步到数据透视表时,我都会收到此错误:
Illuminate\Database\QueryException
SQLSTATE[23503]: Foreign key violation: 7 ERROR: insert or update on table "items_option_parcel"
violates foreign key constraint "items_option_id_fk_2971521" DETAIL: Key (items_option_id)=(0) is not present in table "items_options". (SQL: insert into "items_option_parcel" ("items_option_id", "parcel_id") values (0, 168))
这是我的控制器的一行:
$parcel->parcel_options()->sync($request->input('parcel_options', []));
第一个模型中的功能:
public function parcelOptionsParcels()
{
return $this->belongsToMany(Parcel::class);
}
第二个模型中的功能:
public function parcel_options()
{
return $this->belongsToMany(ItemsOption::class);
}
【问题讨论】:
-
您是否在该输入数组中传递了 0?
parcel_options? -
不,它应该采用不为 0 的项目选项 id
标签: laravel postgresql eloquent