将不同的对象映射到具有公共对象(db)模型的mongoose db模型

时间:2018-02-14 05:06:01

标签: node.js mongodb mongoose

我们可以实现一个通用的数据库模型,而来自不同数据源的响应有一些差异吗?

实施例,

我的数据库架构如下:

//Common database schema
var CoreSchema = new mongoose.Schema({
    "TransectionDate":String,
    "ValueDate":String,
    "Description":String,
    "ReferenceNo":String,
    "DebitAmount":Number,
    "CreditAmount":Number,
    "BalanceAmount":Number,
});

虽然我的INPUT数据源(我无法控制的第三方)对同一组数据具有不同的列名。就像一些为我提供数据的API(为简洁起见,未提供架构)。

Txn Date
Value Date
Description
Ref No./Cheque No.
Debit
Credit
Balance

虽然其他消息来源

Date
Narration
Chq.Ref.No.
Value Dt
Withdrawal Amt.
Deposit Amt.
Closing Balance

现在我关心的是我们应该如何将这些数据映射到核心模型(如自动映射器或类似的东西)。请注意,即使有时候列的顺序也不同,但是如果JS或NodeJs中有一种方法可以像c#等其他语言一样提供 数据注释 ,我很乐意实行。

(我已经想过在插入/更新时迭代数据,如果没有任何效果。但是我觉得这不是一个想法我想要去的地方。)

请建议您对此的看法。

顺便说一句,我已经检查过几篇SO帖子,所以请不要引用其他帖子,除非你确定能够提出确切的解决方案。

感谢。

N Baua

1 个答案:

答案 0 :(得分:0)

我最终更新了源JSON密钥(列标题),现在可以正确地映射到模式。

我知道这是一个黑客攻击,但是在这里发布它可能会让人感到轻松和乐于助人。

- N Baua