У меня есть следующая схема:
const playerSchema = mongoose.Schema({
firstName: {
type: String,
required: true,
trim: true,
maxlength: 50,
lowercase: true
},
lastName: {
type: String,
required: true,
trim: true,
maxlength: 50,
lowercase: true
},
displayName: {
type: String,
set: getDisplayName
},
photoUrl: String,
playerType: String,
teams: [
{
type: mongoose.Schema.ObjectId,
ref: 'Team'
}
]
})
Теперь я хочу установить displayName таким образом, чтобы первая буква firstName была заглавной, а затем пробела и фамилии.Теперь я использую для этого следующую функцию:
const getDisplayName = function() {
let firstName = this.firstName
const extractedFirstName = firstName.substring(0, 1);
return `${extractedFirstName.toUpperCase()} ${this.lastName}`
}
Теперь мой вопрос, можно ли использовать this.firstName, он будет работать успешно?будет ли проблема при настройке displayName, когда firstName и lastName еще не установлены и не сохранены.Мне нужен совет специалиста здесь.