Tengo este esquema y cada vez que intento publicar una solicitud con el cartero, me devuelve un error ya que el tipo básico es "Cadena", pero lo he definido como número. También tengo problemas para publicar una variedad de objetos para bonificaciones y deducibles. Está publicando una matriz vacía. ¿Cuál es la forma de publicar una matriz de objetos en cartero?
const LevelSchema = new Schema({ name: { type: String, required: true }, description: { type: String }, basic: { type: Number, required: true }, bonuses: [ { name: { type: String, required: true }, amount: { type: Number, required: true } } ], deductables: [ { name: { type: String, required: true }, amount: { type: Number, required: true } } ], is_delete: { type: Number, default: 0 } });Puede crear un nuevo esquema para bonuses y deductables . Debido a que comparten todas las propiedades, incluso puede usar el mismo esquema para ambos. Por ejemplo:
const BonusesDeductableSchema = new Schema({ name: { type: String, required: true}, amount: { type: String, required: true}, }); Y luego, aplique este esquema en su LevelSchema :
const LevelSchema = new Schema({ name: { type: String, required: true }, description: { type: String }, basic: { type: Number, required: true }, bonuses: [BonusesDeductableSchema], deductables: [BonusesDeductableSchema], is_delete: { type: Number, default: 0 } });Creo que esto debería funcionar.
Luego, en tu cartero, algo como esto:
{ "name": "string", "description": "string", "basic": 1, "bonuses": [ { "name": "string", "amount": 1 }, { "name": "string", "amount": 1 } ], "deductables": [ { "name": "string", "amount": 1 }, { "name": "string", "amount": 1 } ], "is_delete": 1 }Espero haber ayudado.