Я очень новичок в MongoDB и использую Mongoose.Сохранение отношений «один ко многим» в Mongoose с обеих сторон
У меня есть две модели: users
и recipes
.
User
:
recipes: [{
type: Schema.Types.ObjectId,
ref: 'recipes'
}],
Recipe
:
_creator: {
type: Schema.Types.ObjectId,
ref: 'User',
childPath: "recipes"
},
Когда я пытаюсь сохранить рецепт и я назначить пользователю рецепт:
var recipe = new models.Recipe({
title: req.body.title,
slug: req.body.slug,
_creator: user._id
});
recipe.save();
Рецепт сохранялось только штраф (, хотя я не могу сделать рецепт ._creator.name, чтобы получить имя пользователя из рецепта). Но если я попытаюсь получить детали пользователя, массив recipes
пуст. Я ожидал бы, что он был заполнен вновь созданной ссылкой на рецепт. Почему нет?
_I я не в состоянии сделать 'recipe._creator.name'_ вы должны быть в состоянии, во всяком случае базы данных NoSQL не использовать отношения, это более вложенными документами, безусловно, вы иметь лучший способ писать модели –
Я установил свои модели так же, как описано на этой странице mongoose http://mongoosejs.com/docs/populate.html, но я не совсем понимаю, как их сохранить таким образом, чтобы я могу получить доступ к "отношения" с обеих сторон –