Фото профиля пользователя - PullRequest
1 голос
/ 19 июня 2020

Я создал систему входа и регистрации. Но есть проблема с фотографией профиля пользователя. Если пользователь не хочет добавлять фотографию профиля, тогда фотография профиля этого пользователя будет нулевой. Но я получаю сообщение об ошибке.

это часть моего профиля моего пользователя. js

profile:{
type: String,
}

И это связанный маршрут публикации мой реестр.

let user= new User({
username: req.body.username,
email: req.body.email,
password: hashedPassword,
profile: req.file.path.replace(/^public/, '')
});

И, наконец, это мой register.pug:

.file-field.input-field(method="post")
.btn.grey
label Profile Photo
input(name='profile', type='file', enctype="multipart/form-data")

Но когда я отправляю, не выбирая фото профиля, это дает следующую ошибку:

(узел: 26436) UnhandledPromiseRejectionWarning: TypeError: не удается прочитать свойство «path» неопределенного значения

Но почему это происходит? Я уже объявил фото профиля необязательным. Так почему же он ищет путь, если я не хочу загружать фото профиля?

1 Ответ

1 голос
/ 19 июня 2020

Вы можете проверить, есть ли файл req.file, прежде чем устанавливать его для объекта пользователя, а если его нет, установите его как пустую строку

let user= new User({
username: req.body.username,
email: req.body.email,
password: hashedPassword,
profile: req.file ? req.file.path.replace(/^public/, '') : ""
});

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