尝试更新 Laravel 中的寄存器时出现数组到字符串转换错误
Array to string conversion error when trying to update a register in Laravel
我正在查询名为 'interesteds' 的数据库 table 中的一个特定寄存器,并尝试更新它的一些字段(不是全部),但我收到此错误:
Array to string conversion (SQL: update `interesteds` set `updated_at` = 2017-10-04 00:47:00, `address` = adf, `branch` = gaf, `types` = afva, `means` = mail, `flux` = asvas, `size` = sfvfd where `id` = 38)
我的控制器是这样的:
public function postInterestedDetails()
{
$details = request()->only(['address', 'branch', 'types', 'means', 'flux', 'size']);
$email = request()->only(['email']);
$interested = Interested::where('email', $email)->first()->fill($details);
$updated = $interested->save();
return $updated;
}
如果我请求“return $interested”,我可以获得更新的寄存器,但是当我尝试保存它时,出现数组到字符串错误。 "protected $fillable" 已在模型文件中正确设置。我错过了什么吗?
我认为 request()->only(['email']);
return 任何数组,所以条件将失败
因此,如果您将 $email = request()->only(['email']);
更改为 $email = request()->email;
那么它将正常工作
已更新
根据您的转储结果 means
是一个数组
"means" => array:1 [▼ 0 => "mail" ]
所以你可以像这样更新
$details = request()->only(['address', 'branch', 'types', 'flux', 'size']);
$details['means']=implode(",",request()->means);
我正在查询名为 'interesteds' 的数据库 table 中的一个特定寄存器,并尝试更新它的一些字段(不是全部),但我收到此错误:
Array to string conversion (SQL: update `interesteds` set `updated_at` = 2017-10-04 00:47:00, `address` = adf, `branch` = gaf, `types` = afva, `means` = mail, `flux` = asvas, `size` = sfvfd where `id` = 38)
我的控制器是这样的:
public function postInterestedDetails()
{
$details = request()->only(['address', 'branch', 'types', 'means', 'flux', 'size']);
$email = request()->only(['email']);
$interested = Interested::where('email', $email)->first()->fill($details);
$updated = $interested->save();
return $updated;
}
如果我请求“return $interested”,我可以获得更新的寄存器,但是当我尝试保存它时,出现数组到字符串错误。 "protected $fillable" 已在模型文件中正确设置。我错过了什么吗?
我认为 request()->only(['email']);
return 任何数组,所以条件将失败
因此,如果您将 $email = request()->only(['email']);
更改为 $email = request()->email;
那么它将正常工作
已更新
根据您的转储结果 means
是一个数组
"means" => array:1 [▼ 0 => "mail" ]
所以你可以像这样更新
$details = request()->only(['address', 'branch', 'types', 'flux', 'size']);
$details['means']=implode(",",request()->means);