【问题标题】:getting json object to mongodb?获取 json 对象到 mongodb?
【发布时间】:2013-12-29 06:43:00
【问题描述】:

我一直在使用 casperjs 来登录网站并获取一些我需要的数据。目前我有一个 json 对象,它输出这样的数据,但有更多的字段。

{
    "Activity #": "1-1IMHEEJM",
    "Customer": "DOE, JOHN",
    "Tenure": "0 Year 0 Month",
    "Account #": "12345678",
    "Phone #": "(111) 222-3333",
    "Alt Phone #": "",
    "Agent Name": "Michelle"
}

我的猫鼬模式看起来像这样。

var workOrderSchema = new mongoose.Schema({
  activityNumber: {type: String},
  customer: {type: String},
  tenure: {type: String},
  accountNumber: {type: Number},
  phoneNumber: {type: String},
  altPhoneNumber: {type: String},
  agentName: {type: String}
});

如何使用我的架构在 mongodb 中获取我的数据?我可以将对象直接插入 mongo,但我的字段与我的架构不匹配,即“Activity #”:不是 activityNumber:

我希望我的问题很清楚,有人可以把我引向正确的方向。

谢谢。

【问题讨论】:

  • 您可以只更改字段名称以匹配架构的名称,或更新架构以匹配这些字段名称
  • 我实际上想匹配架构。我的问题是我自动获取字段名称。因为我已经有了一个架构,所以我不想开始重命名一堆字段。

标签: json mongodb mongoose


【解决方案1】:

只需在使用 Mongoose 插入对象时映射/重命名字段。

假设 obj 是您要插入的对象,WorkOrder 是您的模型:

WorkOrder.create({
    activityNumber: obj["Activity #"],
    customer: obj["Customer"],
    tenure: obj["Tenure"],
    accountNumber: obj["Account #"],
    phoneNumber: obj["Phone #"],
    altPhoneNumber: obj["Alt Phone #"],
    agentName: obj["Agent Name"]
}, callback);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    相关资源
    最近更新 更多