Я встретил странный вопрос, когда я сохранял точки позиции в монго от mongoose.
const testSchema1 = new mongoose.Schema({
releasePoints: [{
type: [Number]
}]
}, {
timestamps: {
createdAt: 'created_at',
updatedAt: 'updated_at'
}
});
const testSchema2 = new mongoose.Schema({
releasePoints: [[Number]]
}, {
timestamps: {
createdAt: 'created_at',
updatedAt: 'updated_at'
}
});
Когда я использую testSchema2
сохранить данные успешно, но я использую testSchema1
throw err
:
validation failed: releasePoints: Cast to Array failed for value "[ [ 2.3635503,....
Какая разница между testSchema1
и testSchema2
?
Может добавить валидацию в testSchema1
?
Например:
const testSchema1 = new mongoose.Schema({
releasePoints: [{
type: [Number],
validate: (val) => val.length === 2
}]
}, {
timestamps: {
createdAt: 'created_at',
updatedAt: 'updated_at'
}
});