如何在MongoDB上以正确的方式规范化这个模型

时间:2014-06-24 12:54:31

标签: mongodb

我有3个entidades。 - 税收 - 条件 - Alicuots

很明显,我可以通过这种方式解决它

collection: Taxations
{
    name: "IVA",
    Conditions: [
        "Monotributo",
        "Responsable Inscripto"
    ],
    alicuots : [
        21.00,
        10.50,
        27.00
    ]
}

问题是我有一个people集合,其中自己的文档需要添加Condition属性,所以我可以通过这种方式解决它

collection: People

{
    name: "Juan Perez",
    taxations_conditions : [
        "Monotributo",
        ...
    ]
}

但在Taxations集合中,Conditions有更多属性,因此我需要一个关系才能从people访问此数据 我可以这样做。

collection: Taxations

{
    name: "IVA",
    conditions: [
        {
            key: "mon",
            name: "Monotributo"
        },
        {
            key: "ri",
            name: "Responsable Inscripto"
        }
    ],
    alicuots : [
        21.00,
        10.50,
        27.00
    ]
}


collection: People
{
    name: "Juan Perez",
    taxations_conditions : [
        "mon"
    ]
}

但我不能保证Conditions.key属性为unique,因此我想将ConditionsTaxations分成2个集合,并创建关系,但我不知道我是否打破了noSQL的想法,但据我所知,关系是允许的,但解决这种情况的最佳做法是什么?

干杯!

0 个答案:

没有答案