Вызов функции-члена extension () для строки

Я попытался загрузить изображение с помощью Почтальона, и изображение хранится в предпочтительном каталоге, а полный путь хранится в базе данных, но я получаю сообщение об ошибке

«message»: «Вызов расширения функции-члена () в строке»,

вот мой код

public function store(AvatarUploadRequest $request, UserService $userService) {
$user = $request->user();
try {

$file = $request->file('avatar');
$file = url("/avatars") . "/" . $user->uuid . ".jpg";
$destinationPath = "avatars";
$user->avatar = $request->file('avatar')->move($destinationPath, $file)
->getClientOriginalExtension();
$user->avatar = $file;
$user->save();
$userService->updateAvatar($user, $file);
}
catch (\Exception $e) {
return jsonApiResponse([
'avatar' => $e->getMessage(),
], 422);
}
return jsonApiResponseWithData($user, 201);

}

0

Решение

Удалите эту строку (кажется, вы не используете ее в любом случае):

->getClientOriginalExtension();

Так что это должно работать:

public function store(AvatarUploadRequest $request, UserService $userService) {
$user = $request->user();
try {
$file = $request->file('avatar');
$file = url("/avatars") . "/" . $user->uuid . ".jpg";
$destinationPath = "avatars";
$user->avatar = $request->file('avatar')->move($destinationPath, $file);
$user->avatar = $file;
$user->save();
$userService->updateAvatar($user, $file);
} catch (\Exception $e) {
return jsonApiResponse([
'avatar' => $e->getMessage(),
], 422);
}
return jsonApiResponseWithData($user, 201);
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]