如果没有值或null laravel,则不要更改该值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如果没有值或null laravel,则不要更改该值相关的知识,希望对你有一定的参考价值。
我正在开发一个Laravel项目,当我没有填写密码字段时,我在更新用户方面遇到了一些问题:这是我的UserRequest更新代码
elseif($this->method() == 'PATCH')
{
return [
'user_name' => 'required|max:40|min:1|unique:users,user_name,'.$this->id,
'user_email' => 'required|email|max:40|min:3|unique:users,user_email,'.$this->id,
'user_phone' => 'required|max:40|min:1',
'password' => 'nullable|min:3',
'image' => 'nullable|image|mimes:jpg,jpeg,gif,png|max:2048',
];
}
现在我的问题是当有人提交没有正确密码的表单时,它会将密码更改为空值,而我需要的只是更改旧值,如果有来自请求的值,如果它不只是留下旧的并且不得到null从请求谢谢
答案
显然在存储之前只需检查:
if($request->filled('password') )
{
$user->update(['email'=>$request->email, 'password'=>bcrypt($request->password)];
}
//otherwise just save the other data without password !
使用filled()
方法如果要确定请求中是否存在值且不为空。
以上是关于如果没有值或null laravel,则不要更改该值的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 模型 - 如果数据库表不存在则返回 null