2
你好,我是新来节点js和猫鼬 我有两个方案,我想有其他架构中架构对象 我的计划如何发布和更新模式数组中的模式并打印它?
user.js的
// grab the things we need
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Genre = require('../Models/genre');
// create a schema
var userSchema = new Schema({
name: { type: String, required: true, unique: true , index:true},
email: { type: String, required: true, unique: true },
password: { type: String, required: true },
age: String,
gender: String,
genres: [{type: Schema.ObjectId, ref: Genre.Genre}] //this is the genre schema - the user can have many genres
});
// the schema is useless so far
// we need to create a model using it
var User = mongoose.model('User', userSchema);
// make this available to our users in our Node applications
module.exports = User;
也试图做
genres: [{type: Schema.Type.ObjectId, ref: Genre.Genre}]
and genres: ['Genre']
和genre.js
// grab the things we need
var mongoose = require('mongoose');
var Schema = mongoose.Schema,
ObjectId = Schema.ObjectId;
// create a schema
var genreSchema = new Schema({
name: { type: String, required: true, unique: true, index: true },
age: String,
gender: String
});
// the schema is useless so far
// we need to create a model using it
var Genre = mongoose.model('Genre', genreSchema);
// make this available to our genres in our Node applications
module.exports = Genre;
首先我想知道如果它的方式做到这一点?有更好的办法吗?
当我由邮递员发布用户的用户加入,但我不得到充分的风格,我不知道,如果它的正确保存
这是JSON我张贴
{
"name":"erez",
"age": "23",
"password":"erez1234",
"email":"[email protected]",
"gender":"Male",
"genres": ["57285fe32c3c15e40c000001"] /// what should be here? is it right?
}
,这是让用户JSON
[
{
"_id": "572874be9b43cb4834000002",
"name": "erez",
"age": "23",
"password": "yaniv1234",
"email": "[email protected]",
"gender": "Male",
"__v": 0,
"genres": [
"57285fe32c3c15e40c000001"
]
}
]
如果正确 我怎么能与一个让用户所有类型发送完整的用户?
希望我足够清楚
感谢助理
所以我发布的帖子用户是正确的?我可以为所有用户填充吗?或只有通过findone?也可以通过findById函数完成? – Erez
是的,你写数据的方式是正确的。和阅读部分一样,任何'find()'或'findOne()'方法都可以链接'populate()'函数,我只是给了findOne作为例子。如果你想为所有用户填充,这可以扩展到'find()'方法。 – chridam
谢谢你帮了我 – Erez