Domanda

Mi sto nodi duplicati in una vista che ho creato in Drupal. Sembra che il problema è legato al modo in cui il join è fatto in vista per la tabella node_access.

devel Utilizzando, vedo la seguente query:

    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

Il unirsi al tavolo node_access sta causando gli altri record da duplicare, perché ci sono più record node_access a un nodo, uno con il regno di domain_site e un record con il regno di Domain_ID.

I dati sorta di si presenta così (con alcune colonne tagliate per brevità):

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

A cosa serve il regno adatta? Come vengono questi record popolati, e, soprattutto, come si può risolvere il problema? È il diritto di SQL?

È stato utile?

Soluzione 2

La risposta a quanto pare era molto più banale di quanto pensavo:

Utilizzare l'opzione di configurazione "distinto nodo" in vista, questo estrae doppioni.

Altri suggerimenti

Credo che i regni adattarsi quando si dispone di un sito Drupal con accesso multi sito attivata e che il utilizzando il modulo di accesso di dominio ( http://drupal.org/project/domain ) Se non è necessario il modulo di disinstallazione di accesso di dominio potrebbe risolvere alcune di queste. Se avete bisogno di esso si sarà molto probabilmente bisogno di aggiungere un filtro per la tua vista con il nodo di accesso: L'accesso e / o utilizzare il modulo Viste dominio. Questo dovrebbe farti andando nella giusta direzione. Non ho mai lavorato con questi moduli me stesso. Ho appena passato attraverso le pagine di codice del modulo e di progetto. Buona fortuna!

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top