在最近的设计数据库时,犯了一个低级的错误,就是设置内置文档是定义了错误了,导致数据取不出,去找了很多资料都无法解决。最后看了一了一下自己设置的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. C/S与B/S架构 区别·与优点

    C/S和B/S,是再普通不过的两种软件架构方式,都可以进行同样的业务处理,甚至也可以用相同的方式实现共同的逻辑.既然如此,为何还要区分彼此呢?那我们就来看看二者的区别和联系.   一.C/S 架构 1 ...

  2. NEU 1685: All Pair Shortest Path

    题目描述 Bobo has a directed graph G with n vertex labeled by 1,2,3,..n. Let D(i,j) be the number of edg ...

  3. React 编码

    https://github.com/Minwe/style-guide/blob/master/React.js.md https://github.com/planningcenter/react ...

  4. git format-patch 用法

    git format-patch HEAD^ # git format-patch -s 1bbe3c8c197a35f79bfddaba099270a2e54ea9c7 please replace ...

  5. 解决VMware安装Ubuntu的过程中窗口过小无法看到【下一步】按钮的问题

    只要按住ALT键向上拖动窗口

  6. hdu 4544 湫湫系列故事——消灭兔子(优先队列)

    题意:n只兔子(有血量),m只箭(有伤害.花费),每只兔子只能被射一次,求射死所有兔子的最少花费. 思路:贪心,2重循环,兔子从血量高到低,箭从伤害高到低,用能射死兔子的箭中花费最小的箭射. #inc ...

  7. 一个小bug,关于fuse_mount_sys

    在mount.c  中的 int fuse_mount_sys 函数中,如果注销掉 fd的open语句,此时fd一般为0. 然后,用普通用户运行ssfs且不加-f参数,一切显示正常 fuse_moun ...

  8. windows下关闭指定端口服务,解决tomcat端口占用问题

    http://blog.aizhet.com/Server/640.html 在windows下做java EE的开发时:搭建 Eclipse+tomcat的java web开发环境:在应用之中经常遇 ...

  9. Perl解析JSON数据精解

    简介:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - Dece ...

  10. python中list用法及遍历删除元素

    列表(list)是python的基本数据结构,list中每一个元素都分配一个位置索引,可以通过索引访问元素值,list不要求数据项有相同的数据类型. list初始化 list由一个方括号加内部由逗号分 ...