Он не вставляет никаких данных в мою базу данных mysql ..... Я также вставил заполняемое поле в свою модель пользователя - PullRequest
0 голосов
/ 26 марта 2019

защищенная функция create (массив $ data) {$ request = request ();

    $profileImage = $request->file('image');
    $profileImageSaveAsName = time(). "." . $profileImage->getClientOriginalExtension();
    $profileImage->move('img', $profileImageSaveAsName);

    $user=new User;
    return $user->create([
        'name' => $data['name'],
        'email' => $data['email'],
        'password' => bcrypt($data['password']),
        'image' => $profileImageSaveAsName,
    ]);
}

Ответы [ 2 ]

1 голос
/ 26 марта 2019

Убедитесь, что у вас есть <form enctype="multipart/form-data">.


Кроме того, вы немного усложняете вещи при сохранении изображения.(На самом деле я считаю, что вы должны хранить в storage/app/public/images вместо public/images)

$profileImage = $request->file('image');
$fileName = time() . Auth::id() . "-profile." . $profileImage->getClientOriginalExtension();

$path = $profileImage->storeAs('public/images', $fileName);

Чтобы это работало, убедитесь, что вы выполнили команду symlink: php artisan storage:link

0 голосов
/ 26 марта 2019

сначала проверьте, что вы добавили в форму <form enctype="multipart/form-data">

, а во-вторых, вы не можете получить Auth::id(),

, потому что пользователь не зарегистрирован, следовательно, никакой сеанс не создается, то как вы можетеполучить идентификатор от Auth.Вы также можете проверить дамп и умереть dd(Auth::id), это даст ноль.

И о проверке.Я предполагаю, что вы забыли поместить <form enctype="multipart/form-data">, а также проверить, что у вас есть то же имя в поле ввода, которое находится в валидаторе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...