Relacionar contenidos
Buenas,
estoy empezando con Drupal y tengo las siguientes tablas
A (id_A,...)
B (id_B,id_A,...)
C (id_C,id_B,id_A,...)
el caso es que B es una entidad débil, necesita de la existencia de A. El primer problema surge aquí:
Empleando CCK nodereference en B y A, al crear un contenido de tipo B y relacionarlo con uno de tipo A, esta relación no es bilateral, es decir, no se manifiesta también en el contenido de tipo A.
Otro problema entre A y B es que la relación entre A y B es 1 a N. ¿Cómo represento en Drupal que un elemento de B sólo puede estar relacionado con uno de A?
Otro problema surge con C:
C puede tener relación con un elemento de tipo B --> tiene relación con A (relación entre B y C: 1 a N)
ó
C puede tener relación con un elemento de tipo A (relación entre A y C: 1 a N)
ó
C no tiene relación con nada
Si estoy creando un contenido de tipo C, al relacionarlo con B (mediante nodereference) no se asocia automáticamente con A.
Muchas gracias.
Saludos
- Inicie sesión o regístrese para enviar comentarios

Muchas gracias
Muchas gracias jonhattan.
Conseguí resolver los 2 primeros problemas empleando el módulo cnr. El módulo backreference no llegué a probarlo.
Para el tercer problema me imagino que tendré que programar una acción en AJAX para que al cambiar el contenido del field node reference de B se muestre en el field node reference de A el valor correspondiente
...¿por dónde empiezo?
Provisionalmente lo que hice
Provisionalmente lo que hice fue crear unos radiobuttons en donde el usuario escoge la vinculación de la entidad C
Con B
Con A
Ninguna de las anteriores
Así, empleando ConditionalFields muestro el campo correspondiente
Empleando CCK nodereference
Empleando CCK nodereference en B y A, al crear un contenido de tipo B y relacionarlo con uno de tipo A, esta relación no es bilateral, es decir, no se manifiesta también en el contenido de tipo A.
Para esto puedes usar el modulo backreference o cnr.
Otro problema entre A y B es que la relación entre A y B es 1 a N. ¿Cómo represento en Drupal que un elemento de B sólo puede estar relacionado con uno de A?
La cardinalidad se especifica en la configuración de cada uno de los campos si no me equivoco. Para respetar la cardinalidad quizas sea mejor el modulo cnr.
Si estoy creando un contenido de tipo C, al relacionarlo con B (mediante nodereference) no se asocia automáticamente con A.
No sé si algún módulo te hace crea directamente una referencia extra entre C y A al vincular C con B. Si no, se podrá resolver con un poco de código :)