2016-11-21 5 views
0

私はノードで新しく、私はFeathersjsを使用しています。 私はuserstasksモンゴースが羽毛に埋まっています

私のモデルとの関係を行うためにマングースの移入を使用しようとしている:

user-model.js

const mongoose = require('mongoose'); 
const Schema = mongoose.Schema; 

const userSchema = new Schema({ 
email: {type: String, required: true, unique: true}, 
password: { type: String, required: true }, 
tasks: [{ type: Schema.Types.ObjectId, ref: 'Task' }], 
createdAt: { type: Date, 'default': Date.now }, 
updatedAt: { type: Date, 'default': Date.now } 
}); 

var Task = mongoose.model('Task', storySchema); 
const userModel = mongoose.model('user', userSchema); 

module.exports = userModel; 

task-model.js

const mongoose = require('mongoose'); 
const Schema = mongoose.Schema; 

const taskSchema = new Schema({ 
title: { type: String, required: true }, 
_creator : { type: String, ref: 'User' }, 
createdAt: { type: Date, 'default': Date.now }, 
updatedAt: { type: Date, 'default': Date.now } 
}); 

var User = mongoose.model('user', storySchema); 
const taskModel = mongoose.model('task', taskSchema); 

module.exports = taskModel; 

を私は新しいタスクを追加する場合、user.tasksはまだ空です:

> db.users.find().pretty() 
{ 
    "_id" : ObjectId("5832da6919756a0edc2dfc59"), 
    "email" : "[email protected]", 
    "password" : "$2a$10$DToGYQ8smdfsK4oJPXmcyOdIfxXEaQGO5P16AhzBlrpESUMt5baNi", 
    "updatedAt" : ISODate("2016-11-21T11:28:41.371Z"), 
    "createdAt" : ISODate("2016-11-21T11:28:41.371Z"), 
    "tasks" : [ ], 
    "__v" : 0 
    } 
> db.tasks.find().pretty() 
{ 
    "_id" : ObjectId("5832da7619756a0edc2dfc5a"), 
    "title" : "test", 
    "_creator" : "5832da6919756a0edc2dfc59", 
    "updatedAt" : ISODate("2016-11-21T11:28:54.470Z"), 
    "createdAt" : ISODate("2016-11-21T11:28:54.470Z"), 
    "__v" : 0 
} 

答えて

0

MongoDBには何もありませんが、ユースケースのように他のコレクションのドキュメントへの参照が必要な場合もあります。人口の出番ですので

、あなたは以下の通りmongooseを使用して、それを試してみてください可能性があります。

User     // Mongoose model 
.find({}) 
.populate('tasks') // Populate referenced attributes 
.exec()    // Executes the query and return Promise 

はマングースに人口について詳しく読む: http://mongoosejs.com/docs/populate.html

関連する問題