Pregunta

Me estoy nodos duplicados en una vista que he creado en Drupal. Parece que el problema está relacionado con la forma en que la unión se hace en vistas de la tabla node_access.

Uso devel, veo la siguiente consulta:

    SELECT node.nid AS nid,
           node.language AS node_language,
           node_data_field_weekend.field_weekend_value AS node_data_field_weekend_field_weekend_value,
           node_data_field_weekend.field_weekend_value2 AS node_data_field_weekend_field_weekend_value2,
           node.type AS node_type,
           node.vid AS node_vid,
           node_data_field_weekend.field_weekend_loc_nid AS node_data_field_weekend_field_weekend_loc_nid
      FROM node node
 LEFT JOIN content_type_wwme_weekends node_data_field_weekend ON node.vid = node_data_field_weekend.vid
INNER JOIN node_access na                                     ON na.nid = node.nid
     WHERE (na.grant_view >= 1 AND
           (
           (na.gid = 0 AND na.realm = 'all') OR
           (na.gid = 0 AND na.realm = 'domain_site') OR
           (na.gid = 0 AND na.realm = 'domain_id'))) AND
           (
           (
           (node.type IN ('wwme_weekends')) AND
           (node.status <> 0 OR
           (node.uid = 0 AND 0 <> 0) OR 0 = 1)) AND
           (DATE_FORMAT(STR_TO_DATE(node_data_field_weekend.field_weekend_value, '%Y-%m-%dT%T'), '%Y-%m-%d') > '2010-01-10') )
  ORDER BY node_data_field_weekend_field_weekend_value ASC LIMIT 0, 5

El unirse a la mesa node_access está causando los otros registros de duplicar porque hay varios registros node_access a un nodo, uno con el reino de la domain_site y un registro con el reino de domain_id.

Los datos de tipo de ve así (con algunas columnas cortadas por razones de brevedad):

nid     gid    realm        grant_view  grant_update    grant_delete
73      0      domain_id    1           1               1
73      0      domain_site  1           0               0
988     0      domain_id    1           1               1
988     0      domain_site  1           0               0
90      0      domain_id    1           1               1

¿Para qué encaja en el reino? ¿Cómo se rellenan estos registros, y lo más importante, ¿cómo puedo solucionar este problema? Es el derecho de SQL?

¿Fue útil?

Solución 2

La respuesta al parecer era mucho más mundanos de lo que estaba pensando:

Utilice la opción de configuración "nodo distinto" bajo puntos de vista, esto se lleva a cabo dupes.

Otros consejos

Creo que los reinos encajar cuando se tiene un sitio Drupal con el acceso al sitio de múltiples encendidos y que su uso del módulo de acceso de dominio ( http://drupal.org/project/domain ) Si usted no necesita el módulo de desinstalación Acceso al dominio podría resolver algunos de esto. Si lo necesita lo más probable es que tenga que añadir un filtro a la vista con el Nodo de Acceso: El acceso y / o utilizar el módulo de Vistas de dominio. Eso ayudaría a que va en la dirección correcta. Nunca he trabajado con estos módulos de mí mismo. Acabo de ir a través de las páginas de código del módulo y de proyectos. Buena suerte!

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top