Views: mogelijkheden van de kern module

Met deze oefening gaan we de mogelijkheden overlopen van views (=overzichten). We beperken ons tot de kern module. Views heeft nog veel uitbreidingen, maar dit is voor later. Tevens komt er een referentie naar inhoud aan bod. De referentie module is echter ook ingebouwd in de kern. Je hoeft dus niets te installeren.

Komt aan bod in deze oefening:

Soorten views:

  • pagina
  • blok
  • bijlage
  • entity reference
  • feed

Voorstellen van de inhoud in:

  • tabellen
  • roosters
  • opgemaakte lijsten
  • onopgemaakte lijsten
  • velden

Instellingen:

  • Filteren
  • Filters in een blok voorstellen
  • Sorteren
  • Pagineren
  • Kop en Voet
  • Rollen
  • Melding als er geen inhoud is.
  • Contextuele filters
  • Relaties
  • Query
  • Aggregatie

Maak 2 inhoudstypes aan die verband houden met elkaar. VB Schilders en schilderijen. Elk een body en een afbeeldingsveld. De schilderijen zijn gelinkt met een referentieveld naar de schilder. Ik heb 2 schilders Gustav Klimt en Pablo Picasso en een viertal werken. (bron Wikipedia)

Drupal8_001390.png
Drupal8_001391.png

Maak een view aan met een pagina waar de schilderijen worden getoond. Test de mogelijkheden uit

Ongeordend:

Drupal8_001360.png

Geordend:
Drupal8_001361.png

Rooster:
Drupal8_001362.png

Tabel met velden:


Drupal8_001364.png

De velden:
Drupal8_001365.png

Bekijk de mogelijkheden om per rol de rechten in te stellen:


Drupal8_001366.png

Herschrijf de resultaten en voeg een CSS klasse toe.

Drupal8_001370.png
Drupal8_001371.png

Maak nu ook dat de foto van de schilder verschijnt. Aangezien je hier een view maakt van de inhoud van de schilderijen, heb je niet rechtstreeks de foto van de schilder. Je moet dus een relatie maken.


Drupal8_001372.png

Deze relatie gebruik je nu in de view.
Drupal8_001373.png

Je kunt nu via de instellingen de afbeelding in de kolom van de titel zetten.
Drupal8_001374.png

Zet de paginering.
Drupal8_001375.png

Zet een filter op de schilder en maak hem zichtbaar voor de bezoekers.


Drupal8_001376.png

Probeer eens de groepering uit.

Drupal8_001380.png

Zo zet je een koptekst in je view.

Drupal8_001382.png

en zo kan je een bericht weergeven als er geen resultaten in je view zijn.


Drupal8_001383.png

Je kunt bij een tabel de kolomkoppen sticky houden. zo blijven ze aan de bovenkant zichtbaar.
Drupal8_001384.png

Als je relaties gebruikt kan het zijn dat je dubbele waarden krijgt. In dat geval moet je bij de query opties 'Distinct' aanvinken. Zo krijg je unieke waarden.


Drupal8_001385.png

De filters kan je in een blok tonen in plaats van boven de view. Vergeet niet het blok een plaats te geven.


Drupal8_001386.png

Een contextuele filter is een filter die je met de URL ingeeft. Later zal dit belangrijk worden. Er komt zeker nog een oefening die dit verder uitwerkt. Ik zet hier een filter op de schilder.
Drupal8_001387.png

In het voorbeeldvenster zal je nu niets meer zien, tenzij je een schilder invult.


Drupal8_001388.png

In het echt zie je de filter in de URL. Picasso is niet te bespeuren..


Drupal8_001389.png

Aggregatie wordt gebruikt om aantal, som, gemiddelden,... te berekenen. Maak een bijlage (attachment) view aan om het aantal werken van de schilders (op onze site) te berekenen. koppel dit aan de gewone view.

Gebruikte modules