#node.js #mongodb #mongoose
Вопрос:
Я пытаюсь сохранить массив объектов в мангусте, но это сохраняет только пустой массив в базе данных. Ниже приведена модель и схема
const HoldingSchema = new Schema({ symbol: String, quantity: Number }); const UserSchema = new Schema({ _id: { type: String, required: true, }, holdings: { type: [HoldingSchema], default: undefined, }, }); const UserModel = mongoose.model('Users', UserSchema, 'Users');
Я пытаюсь сохранить массив объектов с помощью приведенного ниже кода. Но это создает пустой массив в месте удержания.
const testuser = new userModel({ _id: '001', holding: [{ symbol: 'itc', quantity: 100 }], }); await testuser.save(); // creates { _id: '001', holdings: [], __v: 0 }
Невозможно ли хранить массив пользовательских объектов. Если нет, то какова была бы альтернатива?
Ответ №1:
На самом деле в вашем коде есть опечатка, поэтому он не сохраняет ваши активы.
Вы написали holding
, в то время как поле на самом деле holdings
const testuser = new userModel({ _id: '001', holdings: [{ symbol: 'itc', quantity: 100 }], });