in views cosa sono le relazioni

9 contenuti / 0 new
Ultimo contenuto
Offline
Drupalitaliano
Iscritto: 9 Set 2009
Messaggi: 109
in views cosa sono le relazioni

non riesco a capire cosa sono le relazioni in views.
gli argomenti invece sembra di capire invece che sono una specie di filtri!

Ritratto di Pinolo
Offline
UberAdmin
UberAdmin
Iscritto: 17 Nov 2005
Messaggi: 3240

Gli argomenti sono una specie di filtri che però non sono fissi come i filtri definiti nella view, ma sono dinamici, basandosi su parametri passati dall'URL (e non solo). Le relazioni servono per ottenere risultati da tabelle (tipi di contenuti) in qualche modo collegati: per esempio, se c'è un campo node-reference, puoi creare una relazione tra il tipo di contenuto che lo contiene e quello referenziato, facendo in sostanza una JOIN.

Offline
Drupalitaliano
Iscritto: 13 Giu 2009
Messaggi: 270

potresti fare un esempio pratico, io non riesco a capire mi sembrano gli argomenti detti cosi

Ritratto di Pinolo
Offline
UberAdmin
UberAdmin
Iscritto: 17 Nov 2005
Messaggi: 3240

Esempio: hai creato una scheda evento con un campo nodereference con la sede dell'evento (che ha a sua volta una scheda).
Ora, se vuoi una vista che elenchi gli eventi e le relative sedi, per estrarre i campi della sede (per esempio nome e indirizzo), devi usare una relazione.

Offline
Drupalitaliano
Iscritto: 28 Giu 2009
Messaggi: 302

Pinolo wrote:
Gli argomenti sono una specie di filtri che però non sono fissi come i filtri definiti nella view, ma sono dinamici, basandosi su parametri passati dall'URL (e non solo). Le relazioni servono per ottenere risultati da tabelle (tipi di contenuti) in qualche modo collegati: per esempio, se c'è un campo node-reference, puoi creare una relazione tra il tipo di contenuto che lo contiene e quello referenziato, facendo in sostanza una JOIN.

puoi spiegarmi meglio le relazioni?
io ho un campo titolo da un tipo di contenuto e tramite node reference view lo associo a un tipo di contenuto galleria.
adesso vorrei che nella view mi visualizza il titolo del primo tipo di contenuto e le immagini del nodo collegato al primo tipo di contenuto.

Ritratto di Pinolo
Offline
UberAdmin
UberAdmin
Iscritto: 17 Nov 2005
Messaggi: 3240

Nella view dovrai impostare una relazione tra il tipo di contenuto "galleria" e l'altro tipo di contenuto (diciamo che si chiama "titoli"). Quando crei la relazione, le dai un nome (es. "titoli").
Poi aggiungi un campo da visualizzare selezionando un nodo -> titolo e selezioni la relazione "titoli" nel menu a tendina in cima alla definizione del campo.

Offline
DrupalNiubbo
Iscritto: 2 Dic 2008
Messaggi: 56

Vorrei segnalare alcuni link interessanti sulle viste che ho trovato dal drupalcamp di Montreal

Views 1 Arguments Documentation: http://drupal.org/node/54455
● Arguments & Relationships Example: http://drupal.org/node/289738
● Arguments Video:
http://gotdrupal.com/videos/drupal-views-arguments

● Relationships Tutorial:
http://drupaleasy.com/blogs/ultimike/2009/07/using-viewsrelationships-
arguments-attachments

● Relationships Video: http://drewish.com/node/127
● Relationships Video:
http://gotdrupal.com/videos/drupal-views-relationships

Stay hungry, stay drupaled

Ritratto di marco.latina
Offline
Drupalitaliano
Iscritto: 5 Feb 2010
Messaggi: 331

problema con visualizzazione vista
come cambiare le relazioni tra tabelle

Ritratto di marco.latina
Offline
Drupalitaliano
Iscritto: 5 Feb 2010
Messaggi: 331

Ciao pinolo,
è da poco che mi sono affacciato a Drupal e ho un problema con una vista che potrebbe essere di facile soluzione.
Ti faccio un esempio, la vista creata è:
SELECT node.nid AS nid,
node_data_field_cognome.field_cognome_value AS node_data_field_cognome_field_cognome_value,
node.type AS node_type,
node.vid AS node_vid
FROM node node
LEFT JOIN content_type_prenotazione node_data_field_cognome ON node.vid = node_data_field_cognome.vid
ORDER BY node_data_field_cognome_field_cognome_value ASC

in quanto nonostante ho preso solo il campo field_cognome_value dalla tabella "content_type_prenotazione" Drupal mi referenzia anche node.

ora il problema è che questo tipo di relazione mi prende anche valori vuoti e invece la dovrei modificare come segue levando il LEFT JOIN:

FROM node,content_type_prenotazione node_data_field_cognome
where node.vid = node_data_field_cognome.vid

Come posso fare ??
Grazie