Collections og Entities
I denne artikel:
Hvad er en collection eller entity?
En collection eller entity benyttes til at hente data ud af en controller, f.eks. blog-indlæg fra en blog-controller. En collection giver dig en eller flere entitys, som er et array af data.
For at hente blog-indlæg fra en blog-controller, benyttes en collection, som vist nedenfor.
{* Get blog post list *}
{collection assign=items controller=$controller pageSize=$pageSize}
Det er også muligt at kalde en entity direkte for at hente f.eks. ét blog-indlæg, som vist nedenfor.
{* Get blog item *}
{entity controller=$controller assign=item}
Ønsker du at læse om en controller, kan nedenstående kode benyttes (åbnes i pop-up vindue).
{help doc=blogController}
Kan jeg ændre i dataene?
En collection og entity initialiseres automatisk med en række standard parametre. Disse kan overskrives, hvis man ønsker det. F.eks. for blog:
- id - et id for blog-indlæg
- pageId - et id for blog-siden
- languageIso - ISO sprog kode
- categoryId - et id for blog-kategorien
- year - årstal for blog-indlæg
- month - måned for blog-indlæg
- search - søgning for blog-indlæg
- hasPublicering - om der skal tages højde for publicering
- pageSize - antal blog-indlæg
Note vedr. indkodning og specialtegn i collections
Hvis du bruger specialtegn som æøå mv. kan du enten:
Hvordan får jeg data ud?
Når en collection er sat, er det muligt at hente data ud, som vist nedenfor.
{*** Loop through blog articles ***}
{foreach $items->getData() as $item}
Titel: {$item->Title}
{/foreach}
Det er også muligt at tjekke størrelsen af array'et, som vist nedenfor:
{*** Calculate the actual size of the collection ***}
{$collectionSize = $items->getActualSize()}
{if $collectionSize gt 0}
Der er data.
{else}
Der er ingen data
{/if}
Slutteligt kan man udskrive alle data i array'et, som vist nedenfor:
{$items|var_dump}
Det er herefter muligt at udskrive og manipulere data. Dette uddybes under fanen data.