Persistance · Question 6 sur 12

Quel type utilise-t-on dans un modèle Extbase pour une propriété qui contient plusieurs objets liés, p. ex. tous les intervenants d'une conférence ?

1 réponse est correcte. Facile

Afficher la solution

Solution

  • A \TYPO3\CMS\Extbase\Persistence\ObjectStorage

Explication

Pour les relations 1:n et m:n, Extbase utilise la classe ObjectStorage, p. ex. protected ObjectStorage $speakers; avec l'annotation @var ObjectStorage<Speaker> pour l'IDE et l'analyse statique. Les entrées sont ajoutées via des méthodes comme addSpeaker(), qui appellent attach() en interne, et retirées avec detach(). Dans le template, on parcourt la relation avec <f:for each="{conference.speakers}" as="speaker">. L'ObjectStorage doit être initialisé avant d'y accéder, sinon une erreur se produit. Le SplObjectStorage de PHP semble similaire, mais Extbase ne peut ni y charger des relations ni en persister les modifications.

Certifications & examens

Quel examen pour la suite ?

Tu peux déjà t’entraîner pour 19 examens, 21 sont soumis au vote. Découvre toutes les certifications avec les infos officielles, vote ou propose ton examen.

Voir toutes les certifications