ErrorException 数组到字符串的转换
$presocio = new Presocio;
$presocio->prestamo_id = $request->prestamo_id;
$presocio->ncuota = $request->ncuota;
$presocio->montopag = $request->montopag;
$presocio->fechapag = $request->fechapag;
$presocio->save();
最后,我设法使它像这样正常工作。 它可以通过不同的方式完成,例如 :: create :: insert
$prestamo = new Prestamo;
$prestamo->socio_id = $request->socio_id;
$prestamo->monto = $request->monto;
$prestamo->cuotas = $request->cuotas;
$prestamo->alias = $request->alias;
$prestamo->save();
$idprestamo = $prestamo->id;
if (count($request->ncuota) > 0) {
foreach ($request->ncuota as $item => $v) {
$presocio = new Presocio;
$presocio->fill(
array(
'prestamo_id' => $idprestamo,
'ncuota' => $request->ncuota[$item],
'montopag' => $request->montopag[$item],
'fechapag' => $request->fechapag[$item],
)
);
$presocio->save();
}
}
toast('Pago Programados Registrado', 'success');
return redirect('prestamo');
答案 0 :(得分:1)
更新,因为我们现在提供了表格。您使用的是ncuota[]
之类的表单名称,而不是ncuota
的表单名称,这使它成为一个数组。您能否制作超过1张Preseocio?如果是这种情况,则要遍历控制器中的项目。
for ($i = 0; $i < count($request->ncuota); $i++)
{
Presocio::create([
'prestamo_id' => $request->prestamo_id[$i],
'ncuota' => $request->ncuota[$i],
'montopag' => $request->montopag[$i],
'fechapag' => $request->fechapag[$i],
]);
}
否则,只需从表单名称的末尾删除[]
。
class Presocio
{
...
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'prestamo_id',
'ncuota',
'montopag',
'fechapag',
];
...
}
Presocio::create($request->all());
现在,那不是问题。那只是一些家务。
您的问题是您的请求字段之一是数组。无论是哪一种,您都需要将其转换为JSON对象或找到一种更好的存储方式。
如果您不希望将其保留为数组,请将数据库字段修改为jsonb
字段。
答案 1 :(得分:0)
尝试此创建方法
删除所有代码,并仅在商店方法中写入此代码
$input = $request->all();
Presocio::create($input);
答案 2 :(得分:0)
您可以这样做:
POST