Mongoose variable key name Mongoose variable key name mongoose mongoose

Mongoose variable key name


You'll be better off if you avoid dynamic keys in your schema and go with your second idea of:

user_info: [{sessionid: String, value: String}]

You can use the $ positional operator to update individual user_info array elements by sessionid.


You may try with Schema Type Mixed like this way

var user = new Schema({   info:    [Schema.Types.Mixed] });user.info = { any: { thing: 'i want' } };user.markModified('info');

You can read more about it here


After testing the above, I found that defining the schema as user_info: { String: String } is a valid way to do this (option 1 specified in the question).