在最近的设计数据库时,犯了一个低级的错误,就是设置内置文档是定义了错误了,导致数据取不出,去找了很多资料都无法解决。最后看了一了一下自己设置的model文件。配置错误,所以导致数据取不出了。

数据库时这样设计的

var mongoose = require('mongoose'),
Schema = mongoose.Schema; //realTimeloginSchema 停车场运行实时监控
var realTimeloginSchema = new Schema({
realuserId: {type: String}, //用户ID
realPwd: {type: String}, //用户密码
realAddTime: {type: Date}, //注册时间
realLoginTime: {type: Date}, //登录时间
realRoot:{type: Boolean,default:false}, //是否是超级用户,默认是false
realPower: {type: Boolean,default:false}, //添加用户权限,默认是false
realpark:{
parkId:{type:String}, //停车场名称
parkName:{type:String}, //停车场ID
scale: {type: Number}, //停车场总车位
pionts:{ lng :{type:String}, //经度
lat :{type:String} //纬度
}
}
}
); module.exports = mongoose.model("realTimelogin ", realTimeloginSchema);

自己在可视化工具robomongo是这样数据是这样的:

{
"_id" : ObjectId("58afe978c0120986cddacf6c"),
"realPwd" : "124",
"realuserId" : "124",
"realAddTime" : ISODate("2017-02-26T10:05:51.643Z"),
"realPower" : true,
"realRoot" : false,
"realpark" : [
{
"parkId" : "99999888881474167822",
"parkName" : "小猫停车场",
"scale" : 200
},
{
"parkId" : "0755000021433988491",
"parkName" : "软件产业基地停车场",
"scale" : 500
},
{
"parkId" : "18682397901474189348",
"parkName" : "新版测试停车场",
"scale" : 1250
}
]
}

  console.log(doc.realpark);是可以打印数据的,但是一直取不到realpark的长度,所以无法遍历对象。

之后查看了一下官网文档,才知道自己定义错误,应该这样定义:

var mongoose = require('mongoose'),
Schema = mongoose.Schema; //realTimeloginSchema 停车场运行实时监控
var realTimeloginSchema = new Schema({
realuserId: {type: String}, //用户ID
realPwd: {type: String}, //用户密码
realAddTime: {type: Date}, //注册时间
realLoginTime: {type: Date}, //登录时间
realRoot:{type: Boolean,default:false}, //是否是超级用户,默认是false
realPower: {type: Boolean,default:false}, //添加用户权限,默认是false
realpark: {type: Object, default: []}
/* realpark:{
parkId:{type:String}, //停车场名称
parkName:{type:String}, //停车场ID
scale: {type: Number}, //停车场总车位
pionts:{ lng :{type:String}, //经度
lat :{type:String} //纬度
} }
*/
}
); module.exports = mongoose.model("realTimelogin ", realTimeloginSchema);

  这样就可以得到内嵌对象的长度,遍历对象。

mongoDB内置文档定义的更多相关文章

  1. MongoDB内置文档查看和修改

    MongoDB设计的时候,有时候会设计内置文档,方便某个对象的统一.在这里略写了查看内置文档和更新内置文档. 1.查看  表为:realtimelogin   realName为:123 realpa ...

  2. MongoDB 内嵌文档

    MongoDB是文档型的数据库系统,doc是MongoDB的数据单位,每个doc相当于关系型数据库的数据行(row),doc和row的区别在于field的原子性:row中的column是不和分割的原子 ...

  3. mongodb内嵌文档的javaapi,增删改查

    数据结构: {"_id" : "000000001",  //Mongodb默认主键 "UID" : "000000001&quo ...

  4. MongoDB内嵌文档操作

    实体定义: [BsonIgnoreExtraElements] public class Person : BaseEntity { public string FirstName { get; se ...

  5. mongodb内嵌文档的查询

    本文转自:http://blog.163.com/wm_at163/blog/static/1321734902012526103825481/ 1 > db.blog.findOne() { ...

  6. mongodb对数组元素及内嵌文档进行增删改查操作(转)

    from:https://my.oschina.net/132722/blog/168274 比如我有一个user类,他包含一个标签属性,这个标签是一个数组,数组里面的元素是内嵌文档,格式如下: &l ...

  7. mongodb查询内嵌文档

    mongodb查询内嵌文档   假设有这样一个文档: db.XXX.remove(); db.XXX.insert({"id":1, "members":[{& ...

  8. MongoDB对数组元素及内嵌文档进行增删改查操作

    比如我有一个user类,他包含一个标签属性,这个标签是一个数组,数组里面的元素是内嵌文档,格式如下: {    "_id" : "195861",    &qu ...

  9. MongoDB查询或修改内嵌文档

    作为非关系型数据库中的佼佼者,MongoDB一大优势在于能够在一条文档中存储对象类型的数据,适当增加冗余来让数据库更好用.文档中一个对象类型的字段在MongoDB中被称为内嵌文档(Embedded) ...

随机推荐

  1. crontab -e 定时任务中的 脚本文件 路径

    crontab -l 57 */1 * * * python /home/data/crontab_chk_url/personas/trunk/plugins/spider/chk_url_stat ...

  2. 如何使用Visual Studio构建libiconv

    参考博文:How to Build libiconv with Microsoft Visual Studio - CodeProject libiconv源码下载地址:libiconv - GNU ...

  3. Servlet session的理解

    servlet参见http://blog.csdn.net/bryanliu1982/article/details/5214899 session参见http://lavasoft.blog.51c ...

  4. android 一个TextView设置多种颜色

    时候一个文本框为了强调内容需要显示不同颜色,用以下代码可以轻松实现 方法一:(适用于颜色变化多的情况)   //为文本框设置多种颜色 textView=(TextView)findViewById(R ...

  5. 【Java】DateUtil(2)

    import java.sql.Timestamp; import java.text.ParseException; import java.text.SimpleDateFormat; impor ...

  6. 屏幕适配-使用autoLayout

    当遇见xib中无法删除的控件时. 将这个错误的控件拖离本xib(第一个元素.xib文件是有许多元素组成的集合),确保这个xib是正确的.重新创建一个xib文件,将这个正确的xib元素整个复制过去. 在 ...

  7. 【HDU 3555】 Bomb

    [题目链接] 点击打开链接 [算法] 数位DP [代码] #include<bits/stdc++.h> using namespace std; #define MAXL 15 type ...

  8. 廖雪峰ES6的箭头函数

    http://www.liaoxuefeng.com/ wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/0014385659690576 ...

  9. 【Cocos2d-HTML5 开发之一】新建HTML5项目及简单阐述与cocos2d/x引擎关系

    真的是有一段时间没写博了,这段时间呢,发生的事情真的挺多,另外自己呢也闲来做了一些自己的喜欢的东西,主要做的还是基于Mac系统的Cocoa框架的各种编辑器吧.(对了,今年初也出了自己第二本书<i ...

  10. absolute属性与IE6/IE7之间的误会

    三.absolute属性与IE6/IE7之间的误会 absolute属性确实存在不少兼容性的问题,首先absolute属性定位相关(left/top)的些bug(例如IE6的奇偶bug)这里不予以讨论 ...