Laravel говорит мне неопределенный индекс, но дд говорит, что он там
Начал новый проект Laravel 5.2 и реализовал аутентификацию по умолчанию, которая идет с ним. Я хотел изменить это так, чтобы форма регистрации имела поле для имени и фамилии, а не просто "имя". Я добавил поля в представлении, проверке и модели. Когда я тестирую, я получаю следующее:
Строка 71 находится в следующем блоке кода для фамилии или "lname".
protected function create(array $data)
{
return User::create([
'fname' => $data['fname'],
'lname' => $data['lname '],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
}
Когда я добавляю dd
в массиве данных прямо перед return/create
как это:
protected function create(array $data)
{
dd($data);
return User::create([
'fname' => $data['fname'],
'lname' => $data['lname '],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
}
Мы можем ясно видеть, что lname
фактически присутствует в этом массиве и не должен быть неопределенным индексом. В чем дело?
1 ответ
Изменить это
'lname' => $data['lname '],
к этому
'lname' => $data['lname'], # additional space within the key
Во второй строке проверки ошибок вы можете увидеть 'lname '