【发布时间】:2019-03-14 13:04:05
【问题描述】:
我在尝试编辑数据库中已存在的数据时遇到以下问题。 我的控制器名称是 UserController.php
错误:从空值创建默认对象。
我可以从我的数据库中提取数据并将其发布到我的表单中。尝试编辑时发生该错误。
这是导致错误的代码块。
public function update(Request $request, $id)
{
$this->validate($request, [
'fname' => 'required',
'lname' => 'required',
'email' => 'required',
'phone' => 'required',
'address' => 'required',
'country' => 'required',
'city' => 'required',
'bday' => 'required',
'username' => 'required',
'password' => 'required',
'access' => 'required'
]);
$userList = users::find($id);
$userList->fname = $request->get('fname');
$userList->lname = $request->get('lname');
$userList->email = $request->get('email');
$userList->phone = $request->get('phone');
$userList->address = $request->get('address');
$userList->country = $request->get('country');
$userList->city = $request->get('city');
$userList->bday = $request->get('bday');
$userList->username = $request->get('username');
$userList->password = $request->get('password');
$userList->access = $request->get('access');
$userList->save();
return redirect()->route('users.index')->with('success', 'Data Updated');
}
我可以从调试器中看到我发送了新数据
GET Data empty
POST Data
_token "mnC6GliLHdSazZkEpaxZQ97aAChr2LObcc9clMlk"
_method "PATCH"
fname "test"
lname "user"
email "test@user.lara"
phone "12345678990"
address "Streat"
country "countryplace"
city "somecity"
bday "2018-01-01"
username "tester"
password "test"
access "Client"
但它突出显示$userList->fname = $request->get('fname');
并说:“从空值创建默认对象”
我是 laravel 的新手,不明白为什么会这样。 是因为我的身材吗?
<form method="post" action="{{action('UserController@update','$id')}}">
{{csrf_field()}}
<input type="hidden" name="_method" value="PATCH" />
【问题讨论】:
标签: laravel laravel-5 eloquent edit laravel-request