Yo soy la definición de una mangosta y el esquema de definición es la siguiente:

   inventoryDetails: {
        type: Object,
        required: true

    },
    isActive:{
        type:Boolean,
        default:false
    }

Traté de «Objeto» de tipo y estoy viendo mis datos es cada vez guardado correctamente. Cuando me ha cambiado el tipo de la matriz, el ahorro está fallando.

Datos De La Muestra:

{
    "inventoryDetails" : { 
        "config" : { 
            "count" : { 
                "static" : { "value" : "123" }, 
                "dataSource" : "STATIC" 
            }, 
            "title" : { 
                "static" : { "value" : "tik" }, 
                "dataSource" : "STATIC" 
            } 
        }, 
        "type" : "s-card-with-title-count" 
    } 
}

«Objeto» no es uno de los tipos que mangosta permite. Pero, ¿cómo está siendo apoyado ?

Lo que falla exactamente para usted? Hizo usted echa un vistazo a la documentación. Tipo de objeto es compatible. La matriz se apoya también. mongoosejs.com/docs/schematypes.html
sí, me fui a través de la documentación y el siguiente son compatibles. Cadena,Número,Fecha,Buffer,Boolean,Mixto,Objectid,De La Matriz. Donde es Objeto mencionado? Y nada está fallando. Sólo quería saber si mangosta implícitamente admite javascript tipos de datos

OriginalEl autor codewarrior | 2017-02-03

1 Comentario

  1. 30

    Usted tiene dos opciones para llegar a su Object en la db:

    1. Definir por sí mismo

    let YourSchema = new Schema({
      inventoryDetails: {
        config: {
          count: {
            static: {
              value: {
                type: Number,
                default: 0
              },
              dataSource: {
                type: String
              }
            }
          }
        },
        myType: {
          type: String
        }
      },
      title: {
        static: {
          value: {
            type: Number,
            default: 0
          },
          dataSource: {
            type: String
          }
        }
      }
    })

    Echar un vistazo a mi real código:

    let UserSchema = new Schema({
      //...
      statuses: {
        online: {
          type: Boolean,
          default: true
        },
        verified: {
          type: Boolean,
          default: false
        },
        banned: {
          type: Boolean,
          default: false
        }
      },
      //...
    })

    Esta opción le da la posibilidad de definir el objeto de la estructura de datos.

    Si quieres un flexible objeto de estructura de datos, consulte la siguiente.

    2. Utilice el valor predeterminado Schema.Types.Mixed tipo

    Ejemplo tomado de la doc:

    let YourSchema = new Schema({
      inventoryDetails: Schema.Types.Mixed
    })
    
    let yourSchema = new YourSchema;
    
    yourSchema.inventoryDetails = { any: { thing: 'you want' } }
    
    yourSchema.save()

    OriginalEl autor Justin

Dejar respuesta

Please enter your comment!
Please enter your name here