error de mongodb críptico LEFT_SUBFIELD solo es compatible con Objeto: estadísticas no: 6
Estoy teniendo problemas para entender qué significa este error
LEFT_SUBFIELD solo es compatible con Objeto: estadísticas no: 6
Parece que está sucediendo cuando estoy insertando en mi colección de perfiles. Estoy usando mongoose.js. Estamos insertando recuentos de publicaciones en cada categoría en la propiedad de estadísticas, por ejemplo,
<code>stats: {category:count, category2: count2}. </code>
Aquí está mi esquema
<code>var ProfileSchema = new Schema({ uname: { type: String, required: true, index: true, unique: true }, fname: String, lname: String, stats: { type:{}, "default":{}, required:true }, created: { type:Date, required:true, "default":Date.now } }); </code>
Creo que podría estar ocurriendo cuando estoy actualizando el número de estadísticas del objeto $ inc para que las estadísticas puedan aparecer en algo como esta actualización.
<code>db.status.update({_id:xyz}, {$inc: { stats.foo : 1, stats.bar:1}}) </code>
Aquí está mi código de mangosta
<code> var tags = ["comedy", "action", "drama"]; //also adding the postId to the posts collection of profile var updateCommand = {$push: {posts: post._id}}; var stats = {}; for (var i = tags.length - 1; i >= 0; i--){ stats["stats." + tags[i].toString()] = 1; }; updateCommand.$inc = stats; Profile.update( {uname: uname}, updateCommand, {safe:true, upsert:true}, callback ); </code>