我正在尝试在请求(UpdateAssociafamiglie)中验证组合密钥。
如何忽略2个字段?
我的数据透视表有2个字段(famiglia_id,info_id),当更新记录时,出现错误提示Costcostt Violation(重复记录)。
我知道如何仅使用1个字段就忽略.........如何在一击中忽略famiglia_id和info_id?
谢谢;)
答案 0 :(得分:0)
public function updateInfoTecnica(UpdateAssociafamiglia $request)
{
$famiglia = Famiglia::find($request->input('famiglia'));
$info_id = $request->input('info');
$famiglia->info()->attach([$info_id => [
'valore' => $request->input('valore')
]
]);
return redirect('famiglie/' . $famiglia->id)->with('ok_message', 'Info Tecnica modificata con Successo');
}
这是一个请求(但不起作用...)
public function rules()
{
return [
'info' => [
'required',
Rule::unique('famiglia_info','info_id')
->ignore($this->famiglia, 'famiglia')
->where(function ($query) {
$query->where('famiglia_id', $this->request->get('famiglia'));
})
],
'valore' => 'required'
];
}