Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/06/2014, 06:28
Avatar de korg1988
korg1988
 
Fecha de Ingreso: junio-2006
Ubicación: Santa Fe, Argentina
Mensajes: 825
Antigüedad: 17 años, 10 meses
Puntos: 19
Como establezco estas "relaciones" en MongoDB

Hola, tengo 3 entidades.
- Impuestos
- Condiciones
- Alicuotas

Esta mas que claro que a simple vista puedo solucionarlo de la siguiente manera
Código:
collection: impuestos
{
    nombre: "IVA",
    condiciones: [
        "Monotributo",
        "Responsable Inscripto"
    ],
    alicuotas : {
        21.00,
        10.50,
        27.00
    }
}
El problema es que tengo otros documentos en la coleccion personas que llevan consigo mismo la condicion para cada impuesto
Podria guardar estos datos asi:
Código:
{
    nombre: "Juan Perez",
    condiciones_impuestos : [
        "Monotributo",
        ...
    ]
}
pero en la coleccion de impuestos, las condiciones tienen otros atributos, por lo que necesito si o si de una relacion para poder acceder a estos.
Podria solucionarlo asi:
Código:
collection: impuestos
{
    nombre: "IVA",
    condiciones: [
        {
            key: "mon",
            nombre: "Monotributo"
        },
        {
            key: "ri",
            nombre: "Responsable Inscripto"
        }
    ],
    alicuotas : {
        21.00,
        10.50,
        27.00
    }
}


{
    nombre: "Juan Perez",
    condiciones_impuestos : [
        "mon"
    ]
}
pero no podria garantizar que las key para las condiciones sean unique, por lo que se me ocurrio separar condiciones e impuestos en dos colecciones distintas y crear relaciones, pero no se si estaria rompiendo demasiado el esquema noSQL, aunque en la teoria, las relaciones estan permitidas.. No se.. Que opinan?