El módulo de referencia de nodo (un componente de CCK) proporciona una excelente manera de crear una referencia de un nodo a otro. ¿Cuál es la mejor manera de exponer una relación bidireccional entre los dos? Ejemplo a continuación:
Por ejemplo, en un sistema de seguimiento de tickets con dos tickets (nodos) A y B, puede crear una referencia de nodo desde el ticket A -> B y marcar B como elemento secundario. Al ver el boleto A, sería trivial mostrar esta información. Sin embargo, también me gustaría mostrar esta relación al ver el boleto B y mostrar el boleto A como padre.
Este mismo requisito también se aplicaría en situaciones no jerárquicas (tickets C y D) con una referencia de C -> D, la relación debe exponerse en el ticket D y en C.
El módulo de referencia de entidad ahora funciona con las referencias de entidad correspondientes . Esto es ideal para todos los nodos y entidades no nodales.
fuente
Para Drupal 6, la mejor opción es probablemente el módulo NodeReferrer . Para Drupal 7, la relación encaja perfectamente, pero aún no está lista.
fuente
Si está utilizando Drupal 7 / Views, puede construir una relación 'inversa' para obtener una lista de nodos que se refieren a un nodo determinado (o, tal vez, usuarios que se refieren a un nodo determinado). Consulte el parche en este número: http://drupal.org/node/1043260
En mi opinión, a menos que necesite la relación inversa explícita y preconstruida almacenada en la base de datos (esto a veces puede ser útil por razones de rendimiento), usar una de las otras soluciones es excesivo. Siempre puede buscar una relación en su propia consulta SQL si necesita ...
[Editar: desde que originalmente escribí esta publicación, el parche en el tema anterior se ha comprometido con Referencias para D7, y debería ser la forma preferida de referencia inversa (funciona muy bien cuando simplemente se necesitan listas de nodos o usuarios que hacen referencia a cierto otro nodo o usuario) .]
[Edición 2: Si está usando Referencia de entidad, parece que la solución preferida es usar Referencias de entidad correspondientes , y también está la Sincronización de campo de referencia de entidad menos utilizada .]
fuente
En Drupal 7 (que usted indicó) parece que la solución es usar el Módulo de referencia de entidad en combinación con el módulo de Sincronización de campo de referencia (Entidad) que agrega la funcionalidad necesaria para mantener sincronizadas las relaciones.
Lo mismo se puede lograr con el Módulo de referencias con el módulo cnr : esta solución funciona (la estoy usando en un sitio de Drupal 7 actualmente), pero se está volviendo obsoleta / obsoleta a favor de la primera solución que di.
Todas las otras soluciones mencionadas en las respuestas anteriores son relevantes solo para Drupal 6 (a excepción de la Relación que tiene el potencial de convertirse en un gran módulo, pero en este momento, realmente no hace mucho y tiene muchos problemas).
fuente
Alternativamente, si está trabajando en una implementación personalizada y desea una forma directa de hacer referencia, puede conectarse
nodeapi
, escuchar lasave
operación y luego actualizar programáticamente el nodo referenciado.fuente
También puede probar el módulo de referencia de nodo inverso .
fuente
Simplemente use Reglas y esta regla http://drupal.org/node/1836240
fuente
Puede usar el módulo de dependencia de contenido .
Le proporciona referencias inversas a través de la pestaña y admite los siguientes módulos: referencia de nodo / referencia de entidad .
fuente