Я не могу установить отношения между моим контроллером Rides и Comments в моем приложении (построенном с использованием генератора углового ползунка yoman).Отношение Mongoose не работает в обоих направлениях
комментарий модель:
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var CommentSchema = new Schema({
name: String,
comment: String,
active: Boolean,
ride: { type: mongoose.Schema.Types.ObjectId, ref: 'Ride' }
});
module.exports = mongoose.model('Comment', CommentSchema);
езды Модель:
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var RideSchema = new Schema({
name: String,
distance: String,
climb: String,
rating: String,
active: Boolean,
comments: [{ type: mongoose.Schema.Types.ObjectId, ref: 'Comment' }]
});
module.exports = mongoose.model('Ride', RideSchema);
Доступ к/API/комментарии/дает мне правильный результат, содержащий связанную Поездку:
{"_id":"54ce818f8c2889da58b01e19","name":"NAAM","comment":"COMMENT","ride":"54ce69647a78532057aa98e0","__v":0}]
Доступ к/API/едет/дает мне следующий результат, без соответствующих Комментариев:
[{"_id":"54ce69647a78532057aa98e0","name":"Ride test ingevuld","distance":"4000","climb":"1200","rating":"1","__v":0,"comments":[]}]
Может кто-нибудь сказать мне, что я делаю неправильно?
Это почти работает. кроме моего ng-repeat не обновляется (обновляется список, содержащий комментарии). В моем контроллере у меня есть: 'export.addCommentToRide = function (req, res) { var id = req.params.id; var c = req.body.comment; var comment = new Комментарий ({name: c.name}); Ride.update ({_: ID}, {$ толчок: {комментарии: комментарий}}, { upsert: истинно}, функция (поездка, ERR) { возвращение res.json (200, поездка); } ); }; ' – jstslkrt
Проверьте db, если ваши данные были сохранены правильно. Если это так, вы должны снова прочитать сборку с сервера, чтобы обновить данные. Сохраните эту коллекцию в своей области и каждый успешный пост добавьте те же данные в свой локальный массив. Убедитесь, что вы получаете Rides с комментариями с сервера te, вы можете проверить его на вкладке «Сеть» в инспекторе Google Chrome, который показывает u все ваши запросы и ответы с сервера – Mike