У меня есть следующие SimpleSchemaметеора - Как добавить поддокумент в качестве ссылки с SimpleSchema
Schema.Team = new SimpleSchema({
name:{
type:String
},
members: {
type: [Schema.User],
optional:true
}
});
Я хотел бы вставить (на сервере) новая команда документ с текущим пользователем, в качестве ссылки (не как встроенный документ).
Я попытался:
Teams.insert({name:"theName",members:[Meteor.user()]}) // works but insert the user as an embedded doc.
Teams.insert({name:"theName",members:[Meteor.user()._id]}) // Error: 0 must be an object
Я также попытался в два этапа:
var id = Teams.insert({name:teamName});
Teams.update({ _id: id },{ $push: { 'users': Meteor.user()._id } });
Тогда я другая ошибка, я не понимаю: Error: When the modifier option is true, validation object must have at least one operator
Так как я могу вставить документ со ссылкой на другую схему?
Если вы хранение _id для каждого пользователя, а не объект, нужно настроить схему, чтобы быть 'тип: [String]' – challett
Когда AutoForm сохраняет такой документ Идентификатор в виде строки, но схема по-прежнему является User.Schema – znat
Вот почему она не обновляется. Он пытается сохранить строку, в которой схема ожидает объект. – challett