CMS: Over het weergeven van inhoud uit meerdere databaseverzamelingen met behulp van verwijzingsvelden

Leestijd 4 minuten
Verwijzingsvelden worden gebruikt om één databaseverzameling aan een andere verzameling te koppen.Verwijzingsvelden bieden je ook extra opties om je gegevens aan je gebruikers weer te geven. 
  • Formatteer een enkele tabel, galerij of repeater om informatie uit meer dan één verzameling weer te geven.
  • Maak een master-detailpagina om items uit de ene verzameling weer te geven die betrekking hebben op een andere verzameling. 
  • Koppel een dropdownlijst aan een verwijzingsveld zodat gebruikers informatie in je verzameling kunnen opslaan.
Let op:
Je kunt galerijen, tabellen en repeaters gebruiken bij het weergeven van informatie met behulp van verwijzingsvelden.
In de voorbeelden in dit artikel worden de volgende verzamelingen gebruikt. Het veld 'Artiest' in de verzameling 'Muzieknummers' is hierbij een verwijzingsveld die koppelt aan het 'Naam'-veld in de Artiesten-verzameling.

Informatie uit meer dan één verzameling weergeven

Ons doel in dit scenario is om één tabel op onze website te creëren met alle items in onze Muzieknummers-verzameling op basis van genre, samen met de naam en foto van hun artiest, zoals in de onderstaande afbeelding. Onthoud dat deze informatie wordt opgeslagen in twee aparte, maar gekoppelde verzamelingen.
De afbeelding hieronder laat zien hoe we onze tabel instellen. 
  • De tabel is gekoppeld aan de Muzieknummers-dataset. 
  • De Muzieknummer-kolom koppelt aan het veld 'Titel van nummer' in de Muzieknummer-verzameling. 
  • De Artiest- en Foto-kolommen zijn gekoppeld aan de 'Artiest'- en 'Foto'-velden in de Artiesten-verzameling. 
Merk op dat in het Tabel koppelen-paneel de Artiest- en Foto-kolommen zowel de naam tonen van de verzameling waarnaar wordt verwezen (Artiesten), de naam van het veld ('Naam' en 'Foto'), als het type (tekst, afbeelding).

Wanneer je een veld selecteert om verbinding te maken met een element, wordt het verwijzingsveld zelf grijs weergegeven. Het toont de naam van de verzameling waarnaar het verwijst. De velden in de verzameling waarnaar wordt verwezen, worden ingesprongen weergegeven.

Gefilterde informatie weergeven (master-detail)

Ons doel in dit scenario is om een artiestenpagina te maken die informatie toont over een bepaalde artiest uit onze Artiesten-verzameling met een lijst van al hun nummers uit onze Muzieknummers-verzameling, zoals in de onderstaande afbeelding.



In dit geval hebben we twee datasets op onze pagina nodig, een primaire dataset en een dataset waarnaar wordt verwezen.

De primaire dataset is gekoppeld aan de Artiesten-verzameling. Deze dataset bepaalt welk artiestitem momenteel op de pagina wordt weergegeven. In ons voorbeeld hierboven is dat Elvis Presley. Als je dit op een dynamische pagina doet, dan is je primaire dataset de dynamische dataset voor die pagina.

De dataset waarnaar wordt verwezen, maakt verbinding met de Nummers-verzameling. Het wordt gefilterd door de Artiesten-dataset, zodat het de items uit de Nummers-verzameling kan ophalen die overeenkomen met de huidige artiest die op de pagina wordt weergegeven.



De afbeelding hieronder laat zien hoe de pagina is ingesteld. Het tekstelement en het afbeeldingselement aan de linkerkant zijn gekoppeld aan de primaire Artiest-dataset, zodat ze de naam en foto van de artiest kunnen weergeven. De tabel rechts is gekoppeld aan de Nummers-dataset waarnaar wordt verwezen die is gefilterd op artiest, zodat alle nummers van die artiest kunnen worden weergegeven.
Belangrijk:
Verwijzingsvelden kunnen niet worden gebruikt om URL's voor dynamische pagina's te maken.

Dropdown-elementen aan verwijzingsvelden koppelen

Je kunt een dropdownlijst-element koppelen aan een verwijzingsveld. Dit betekent dat de items in de dropdownlijst automatisch afkomstig zijn uit het hoofdveld in de verzameling waarnaar wordt verwezen. Als je dit op een invoerformulier doet, wordt de door je bezoeker geselecteerde waarde opgeslagen in het verwijzingsveld in je verzameling. 

Vond je dit artikel nuttig?

|