[英]How to store object in mongoose schema?
In node.js I have three variables: 在node.js中,我有三个变量:
var name = 'Peter';
var surname = 'Bloom';
var addresses = [
{street: 'W Division', city: 'Chicago'},
{street: 'Beekman', city: 'New York'},
{street: 'Florence', city: 'Los Angeles'},
];
And schema: 和架构:
var mongoose = require('mongoose')
, Schema = mongoose.Schema;
var personSchema = Schema({
_id : Number,
name : String,
surname : String,
addresses : ????
});
What type and how do I use it in schema? 什么类型以及如何在模式中使用它? How is the best way for this? 最好的方法是什么?
The Solution to save array is much simple,Please check below code 保存数组的方法很简单,请检查下面的代码
Adv.save({addresses: JSON.stringify(addresses)})
Your schema will look like it 您的架构看起来像它
var personSchema = Schema({
_id : Number,
name : String,
surname : String,
addresses : String,
});
You must create another mongoose schema: 您必须创建另一个猫鼬模式:
var address = Schema({ street: String, city: String}); var address = Schema({street:String,city:String});
And the type of addresses will be Array< address > 并且地址的类型将为Array <address>
You are actually storing an array. 您实际上是在存储数组。
var personSchema = Schema({
_id : Number,
name : String,
surname : String,
addresses : []
});
//Your Schema is very easy like below and no need to define _id( MongoDB will automatically create _id in hexadecimal string)
var personSchema = Schema({
name : String,
surname : String,
addresses : [{
street: String,
city: String
}]
var addresses= [
{street: 'W Division', city: 'Chicago'},
{street: 'Beekman', city: 'New York'},
{street: 'Florence', city: 'Los Angeles'}
];
//Saving in Schema
var personData = new personSchema ({
name:'peter',
surname:'bloom',
addresses:addresses
})
personData.save();
Hope this may solve your issue 希望这可以解决您的问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.