---
title: "Erste Schritte mit Extbase - Wie füttere ich das Plugin mit Daten?"
url: "https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten"
source: "typo3.net"
tags: ["Extensions","Extbase","Frage"]
created: "2013-02-12"
last_reply: "2013-02-21"
replies: 30
solved: false
page: 1
pages: 1
lang: "de"
---

# Erste Schritte mit Extbase - Wie füttere ich das Plugin mit Daten?

Extensions › Extbase · 30 Antworten · gestartet 2013-02-12

## Eröffnungsbeitrag

**martinibianco007** · 2013-02-12 · [Beitrag #1](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/1)

Hi ich bräuchte wieder mal eure Hilfe.

**Vorweg, das verwende ich:**
- Typo3 6.0.1
- Extension Builder 2.5.1

**Was will ich:**
Eine simple Extension. Es gibt ein Showcase (Schaufenster) welches mehrere Showcase Items beinhalten soll.
Das Showcase kann beliebig viele Showcase Items beinhalten.
Showcase Item bestehen aus einem Bild, Text, Link....

Was habe ich bis jetzt gemacht:
**1. Domain Modelling**
**2. Extesnion im Extension Manager installieren**
- Die erfreuliche Nachricht, unter Liste -> neuen Datensatz erstellen kann ich ein Showcase anlegen und darin die Showcase Items

**3. Plugin auf Seite einfügen**
**4. Game Over** #angry# nun stehe ich an, wie kann ich dem Plugin beibringen dass er die auf der Seite eingefügtn Daten verwenden soll?

Laut Mittwald Extbase Doku soll man einen sysfolder anlegen und im Plugin dann auf diesen verlinken. Klingt logisch aber wie kann ich im Plugin ein Feld hinzufügen wo ich dann auf die Datensätze verlinke?

[Bild: \[upl-image-preview uuid=dbda23e5-299a-5af1-94f1-776ae97ca408 url=https://www.typo3.net/assets/files/typo3net/1069-domain-modelling.jpg alt=domain-modelling.jpg thumbnail_url=https://www.typo3.net/assets/files/typo3net/1069-domain-modelling.jpg\]](https://www.typo3.net/assets/files/typo3net/1069-domain-modelling.jpg)

## Antworten

### [#2](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/2) · fan66766 · 2013-02-12

Hey,

ich blick da nicht ganz genau durch.

Bekommst Du die im Backend angelegten Datensätze im Frontend nicht ausgegeben?

Gut wäre noch gewesen zu sehen, was dein Frontend-Plugin für "Advanced Options" hat. Denn dort steht ja welcher Controller mit welcher Methode aufgerufen werden soll.

Zeige uns das bitte mal.

### [#3](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/3) · martinibianco007 · 2013-02-12

richtig meine Frontend Ausgabe bleibt, leer!
bzw. die typo3 seite mit dem plugin ist eine white page :o

Aber das vertehe ich ja auch weil woher soll den das Plugin wissen welche Datensätze es verwenden soll?
Oder checkt das Plugin automtisch, dass es das Showcase, welches sich auf der Seite in der das Plugin sich befindet
ausgibt?

hier der screenshot meiner Advanced Options

[Bild: \[upl-image-preview uuid=c7721762-475c-540d-a107-fee9dd8a940c url=https://www.typo3.net/assets/files/typo3net/1071-advanced.jpg alt=advanced.jpg thumbnail_url=https://www.typo3.net/assets/files/typo3net/1071-advanced.jpg\]](https://www.typo3.net/assets/files/typo3net/1071-advanced.jpg)

### [#4](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/4) · fan66766 · 2013-02-12

Ich bin so froh, dass es nicht nur mir so geht mit diesem System.. #giggle#

"... woher soll den das Plugin wissen welche Datensätze es verwenden soll? ..."

Nene, dazu kommen wir jetzt.

Ne kurze Erklärung:
Das Frontend-Plugin lädt nun den gewünschten Controller, in diesem Fall die list()-Function ( listAction() ), wenn in der URL nichts weiter steht, welche Action geladen werden soll. Es wird dann die Funktion zuerst geladen, die Du im Extension Builder angegeben hast.
Der Controller stellt fest, dass er nun Datensätze ausgeben muss und kann aber nicht wissen, wo Du die in Deinem Backend angelegt hast, weil es ja frei strukturierbar ist.

Die Lösung:
Gehe nochmal im Backend in das Frondend-Plugin, dass Du bereits verknüpft hast (wie im Bild zu sehen). Beim Reiter "Verhalten" mappst Du dann auf den Ordner, in der sich die zu ladenen Datensätze befinden sollen.

Probiere es mal bitte aus. Das müsste es gewesen sein.

Gruss

### [#5](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/5) · martinibianco007 · 2013-02-12

soweit habe ich auch schon gedacht, hilft aber leider nichts

[Bild: \[upl-image-preview uuid=218065fd-2ed4-59d0-a499-918824ec270e url=https://www.typo3.net/assets/files/typo3net/1073-verhalten.png alt=verhalten.png thumbnail_url=https://www.typo3.net/assets/files/typo3net/1073-verhalten.png\]](https://www.typo3.net/assets/files/typo3net/1073-verhalten.png)

### [#6](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/6) · fan66766 · 2013-02-12

Dann folgendes:
1. Cache leeren und erneut schauen.
2. Screenshot im Vollbild machen von dem erstellten Datensatz, der angezeigt werden soll (bitte kein Ausschnitt wie im ersten Bild). Ich vermute Du hast den Datensatz nicht Bei Web->Liste sondern bei Web->Seite angelegt.

### [#7](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/7) · martinibianco007 · 2013-02-12

leider wars das auch nicht

[Bild: \[upl-image-preview uuid=bd5d23f4-adc7-5f27-b904-42f118269431 url=https://www.typo3.net/assets/files/typo3net/1074-Bildschirmfoto-2013-02-12-um-19.14.jpg alt=Bildschirmfoto-2013-02-12-um-19.14.jpg thumbnail_url=https://www.typo3.net/assets/files/typo3net/1074-Bildschirmfoto-2013-02-12-um-19.14.jpg\]](https://www.typo3.net/assets/files/typo3net/1074-Bildschirmfoto-2013-02-12-um-19.14.jpg)

### [#8](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/8) · martinibianco007 · 2013-02-12

eine verständnisfrage hinterher:

wenn ich mit dem extension builder das modelling beendet habe
und ein plugin einfüge ohne den datensatz angelegt zu haben
müsste im frontend zumindest die layout.html ausgegeben werden oder nicht?

muss das statische template hinzugefügt werden?

hat jemand den extension builder unter typo3 6.0 im einsatz?

hoffentlich birngt der morgige tag etwas licht ins dunkle.

### [#9](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/9) · fan66766 · 2013-02-13

Folgendes ist mir aufgefallen:
- Du möchtest Dir Datensätze von ShowcaseItem anzeigen lassen.
- Du hast dem Frontend-Plugin (FP) gesagt, er soll die list() laden.
- Du hast das FP auf einer Seite eingerichtet.
- Du hast im Backend dem FP gesagt, aus welchem Ordner er die Daten hernehmen muss.
- Du hast jedoch nicht nachgeschaut, ob Du auch eine ShoecaseItemRepository.php erstellt bekommen hast, oder?

Das ist wahrscheinlich das Problem. Im Extension Builder ist die Tabelle nicht auf "aggregate root" gesetzt. Demnach wird kein Repository erstellt und die Schnittstelle zur Datenbank fehlt.

Bitte um Überprüfung.

### [#10](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/10) · beo6 · 2013-02-13

Hallo.

Falls ich das richtig verstanden habe:

Du musst natürlich das Static Template einbinden.

Wenn du dir das nämlich einmal von dem erstellten Plugin anschaust. (per default zu finden unter typo3conf/ext/deinplugin/Configuration/TypoScript/*)

wirst du feststellen das dort sowohl das Template-Verzeichnis als auch die storagePid gesetzt werden.

Fügst du also das Static Template ein, kannst du ganz einfach über den Constant-Editor die Storage PageID angeben wo die Daten hinterlegt sind und sie sollten dir dann auch angezeigt werden.

### [#11](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/11) · martinibianco007 · 2013-02-13

> **fan66766 schrieb:**
>
> Folgendes ist mir aufgefallen:
> 1 Du möchtest Dir Datensätze von ShowcaseItem anzeigen lassen.
> 2 Du hast dem Frontend-Plugin (FP) gesagt, er soll die list() laden.
> 3 Du hast das FP auf einer Seite eingerichtet.
> 4 Du hast im Backend dem FP gesagt, aus welchem Ordner er die Daten hernehmen muss.
> 5 Du hast jedoch nicht nachgeschaut, ob Du auch eine ShoecaseItemRepository.php erstellt bekommen hast, oder?

1 ich möchte den Showcase anzeigen dieser ist der Container der Shwocase Items
   z.B. <div class="showcase">
        <h2>showcasetitle</h2>
        <div class="showcaseItem">ITEM</div>

2 Model Object ist wie folgt eingestellt
  ShowcaseItem=>list,show,new,create,edit,update,delete
  Showcase=>list,show,new,create,edit,update,delete
  **Passt das nicht so?**

3 FP ist eingefügt ja statische Template ebenfalls

4 richtig

5 richtig unter ws_showcase -> Classes -> Domain -> Model -> Repository liegt nur ShowcaseRepositry.php
  Da es kaum brauchbare Docs gib weiß ich ja nicht was ich eigentlich alles brauche.

### [#12](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/12) · fan66766 · 2013-02-13

Ich habe ne Vermutung.

Zeige uns mal bitte eine Resources/Private/Templates/Showcaseitem/list.html

### [#13](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/13) · martinibianco007 · 2013-02-13

```html
<f:layout name="Default" />

This Template is responsible for creating a table of domain objects.

If you modify this template, do not forget to change the overwrite settings
in /Configuration/ExtensionBuilder/settings.yaml:
  Resources:
    Private:
      Templates:
        List.html: keep

Otherwise your changes will be overwritten the next time you save the extension in the extension builder

<f:section name="main">
<h1>Listing for ShowcaseItem</h1>

<f:flashMessages />

<table  class="tx_wsshowcase" >
	<tr>
		<th><f:translate key="tx_wsshowcase_domain_model_showcaseitem.itemtitle" /></th>
		<th><f:translate key="tx_wsshowcase_domain_model_showcaseitem.category" /></th>
		<th><f:translate key="tx_wsshowcase_domain_model_showcaseitem.description" /></th>
		<th><f:translate key="tx_wsshowcase_domain_model_showcaseitem.link" /></th>
		<th> </th>
		<th> </th>
	</tr>

	<f:for each="{showcaseItems}" as="showcaseItem">
		<tr>
			<td><f:link.action action="show" arguments="{showcaseItem : showcaseItem}"> {showcaseItem.itemtitle}</f:link.action></td>
			<td><f:link.action action="show" arguments="{showcaseItem : showcaseItem}"> {showcaseItem.category}</f:link.action></td>
			<td><f:link.action action="show" arguments="{showcaseItem : showcaseItem}"> {showcaseItem.description}</f:link.action></td>
			<td><f:link.action action="show" arguments="{showcaseItem : showcaseItem}"> {showcaseItem.link}</f:link.action></td>
			<td><f:link.action action="edit" arguments="{showcaseItem : showcaseItem}">Edit</f:link.action></td>
			<td><f:link.action action="delete" arguments="{showcaseItem : showcaseItem}">Delete</f:link.action></td>
		</tr>
	</f:for>
</table>

<f:link.action action="new">New ShowcaseItem</f:link.action>
</f:section>
```

### [#14](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/14) · fan66766 · 2013-02-13

Scheint alles gut auszusehen.

Setze mal bitte im Extension Builder für diese Tabelle das "aggregate root" Häkchen -> abspeichern -> Datenbank aktualisieren lassen über Menüpunkt "Adminwerkzeuge -> Installation" und erneut aufrufen. Eventuell Cahce leeren.

Achtung: Falls Du Änderungen am Controller, der Repository, oder am Fluid Template gemacht hast, speichere Sie Dir vorher seperat ab. Diese werden gelöscht.

### [#15](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/15) · martinibianco007 · 2013-02-13

Wenn ich is aggregated Root bei ShowcaseItem anhake (verstehe zwar nicht warum das soll ja nicht die root sein)
bekomme ich eine Ausgabe und zwar sieht die ca. wie folgt aus

Listing for ShowcaseItem
Itemtitel (nur Intern) 	category 	Beschreibungstext 	link
schaufensteritem 1 	test 1 	        beschreibung 1 	        <http://www.gmx.net> 	Edit 	Delete
item 2 	                test 2 	        descr 2 	        <http://www.xxx.at> 	Edit 	Delete
New ShowcaseItem

mhhh sobald ich das Häckchen mit der Root wieder entferne is alles futsch.

@fan66766 hast meine PM gelesen?

### [#16](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/16) · beo6 · 2013-02-13

Du greifst anscheinend direkt auf die Showcase Items zu. Wo du jedoch im ersten Posting schreibst das es Showcases gibt (dein Root) das mehrere Showcase Items beinhalten soll.

Daher möchtest du doch sicher eher eine Liste aller Showcases in denen wiederrum alle Showcase Items angezeigt werden.

Dann ist wohl auch laut deinem späteren Posting die ext_localconf falsch. Hier wird immer die controller->action als Default verwendet was als erstes eingetragen ist. Bei dir also showcaseitem=>list

es sollte aber am Anfang wohl eher showcase=>list stehen.

im Template kannst du dann wenn die Verknüpfung im Model richtig eingerichtet ist mit {showcase.showcaseitem.0.beschreibungstext}
z.B. auf das erste showcaseitem in einem showcase zugreifen.

Hoffe ich habe alles richtig verstanden.

### [#17](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/17) · Unbekannter Benutzer · 2013-02-13

Was dir fehlt ist eine Möglichkeit im Plugin ein Showcase auszuwählen, dass dan angezeigt wird. Du könntest natürlich auch die Logik so bauen, dass das von der aktuellen Seite genommen wird. Ich denke dieser Punkt fehlt dir im Moment.

D.h. in deiner listAction() musst du irgendwie ein Showcase object bekommen und das dann nach seinen items fragen...

Um eine Auswahlmöglichkeit im Plugin einzubauen würde ich mal nach Beispielen für Flexforms und Extbase suchen, da gibts welche.

### [#18](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/18) · martinibianco007 · 2013-02-13

@beo6

bist mein held! genau das war das problem: die reihenfolge

vielen dank (auch allen anderen)

### [#19](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/19) · martinibianco007 · 2013-02-13

zu früh gefreut,

der extension builder kann mein modul nun nicht mehr laden.
es wird angezeigt nur bei klick darauf passiert nichts.

anders gefragt, welche dateien darf ich im code verändern ohne
die funktionalität des extensions builders zu zerstören?

habe die ext_localconf und default.html geändert kann das der grund sein?

kann mir jeman eine lektüre empfehlen sonst werde ich hier alt. :o

### [#20](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/20) · fan66766 · 2013-02-13

<http://www.mittwald.de/typo3-dokumentation/> ;)

### [#21](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/21) · beo6 · 2013-02-13

Freut mich das ich helfen konnte.

Der Extension Builder greift glaube ich nur auf die "ExtensionBuilder.json"
und u.U. auf "Configuration/ExtensionBuilder/settings.yaml" zu.

Wenn du nicht die settings.yaml entsprechend anpasst und roundtrip aktiv ist überschreibst du beim erneuten speichern im Extension builder wieder alle Dateien.

die ext_localconf und Templates dürften auf jeden Fall kein Grund sein das es beim laden im Builder Probleme gibt.

### [#22](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/22) · martinibianco007 · 2013-02-14

> **beo6 schrieb:**
>
> im Template kannst du dann wenn die Verknüpfung im Model richtig eingerichtet ist mit {showcase.showcaseitem.0.beschreibungstext}
> z.B. auf das erste showcaseitem in einem showcase zugreifen.

**1. Wie schaut denn deiner Meinung nach die Verknüfung im Model richt aus?**
{showcase.showcaseItem.0.category} funktioniert bei mir nämlich nicht

**2. Muss man im Controller wenn es nur ums auslesen der Werte geht eigentlich händisch etwas einstellen
oder übernimmt das alles der Extension Builder für mich?**

**3. Die eigentliche Frontendausgabe macht ihr im -> Private -> Layouts -> Default.html?**
3.a. In dieser Datei müsste {showcase.0.title} doch den titel des ersten showcase ausgeben oder?

**4. Kennt jemand eine einfache Extension be der man die Vorgehensweise gut verstehen/nachbauen kann.**

danke

### [#23](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/23) · beo6 · 2013-02-14

zu 1.:
Ich meinte damit wenn du es richtig im Extension Builder eingerichtet hast. Der Builder macht das eigentlich wirklich ziemlich simpel.
Der teil für die ausgabe war wirklich nur ein beispiel und du müsstest es natürlich auf die richtige benennung Ändern.
Wenn es mehrere Objekte in {showcase} gibt musst du natürlich {showcase.0.showcaseItem.0.category}
nutzen um das erste showcase zu bekommen.
(<f:for each> ist dein freund)

zu 2.:
Du bekommst vom Extension Builder eigentlich schon eine funktionierende Extension. Die Details musst du natürlich selbst machen.
in deiner Controller Action sollte dann so etwas wie $showcases = $this->showcaseRepository->findAll();
und $this->view->assign('showcases', $showcases);
stehen.

zu 3.:
Nein. Das Layout ist mehr für den Rahmen gedacht.
Die eigentliche ausgabe wird in den Templates unter \typo3conf\ext\deineextension\Resources\Private\Templates

gemacht. Hier sollte es Ordner für die jeweiligen Controller geben, und darin Html-Dateien für die jeweiligen Actions.

Im richtigen Template deiner View und wenn du mit findAll alle Elemente auf die fluid-variable zuweist solltest du mit obigem beispiel mit  {showcases.0.title} den Titel der ersten Showcase ausgeben können.

Ich empfehle ebenfalls mal in ein paar PDFs unter dem Link den fan66766 genannt hat die Grundlagen zu verstehen.

Als Beispiel kenne ich jetzt nur das Blogexample was aber vermutlich schon etwas veraltet sein wird.

### [#24](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/24) · martinibianco007 · 2013-02-14

zu 1: das ist mir klar mit for each oder {showcase.0.showcaseItem.0.category}

In Templates gibt es zwei Ordner
a) Showcase
b) ShowcseItem
beide haben jeweils die Dateien Edit.html - List.html - New.html - Show.html

im Default.html steht lediglich folgende Zeile die eingentlich nichts anderes
macht als die List.html von Showcase aufzurufen.

```html
<f:render section="main" />
```

Die List.html von Showcase sieht wie folgt aus

```html
<f:layout name="default" />

This Template is responsible for creating a table of domain objects.

If you modify this template, do not forget to change the overwrite settings
in /Configuration/ExtensionBuilder/settings.yaml:
  Resources:
    Private:
      Templates:
        List.html: keep

Otherwise your changes will be overwritten the next time you save the extension in the extension builder

<f:section name="main">
<h1>Listing for Showcase</h1>

<f:flashMessages />

<table  class="tx_wsshowcase" >
	<tr>
		<th><f:translate key="tx_wsshowcase_domain_model_showcase.title" /></th>
		<th> </th>
		<th> </th>
	</tr>

	<f:for each="{showcases}" as="showcase">
		<tr>
			<td><f:link.action action="show" arguments="{showcase : showcase}"> {showcase.title}</f:link.action></td>
			<td><f:link.action action="edit" arguments="{showcase : showcase}">Edit</f:link.action></td>
			<td><f:link.action action="delete" arguments="{showcase : showcase}">Delete</f:link.action></td>
		</tr>
		
	</f:for>
</table>

<f:link.action action="new">New Showcase</f:link.action>
</f:section>
```

Wie muss ich in dieser Datei ein showcaseItem aufrufen oder sollte ich in der schleife die List.html des ShowcaseItem
aufrufen? wenn ja wie?

danke für die geduld
ich finde die docus ziemlich schwach und wenn man mal ein beispiel
findet ist es gleich schon sehr komplex dass es für den anfang eher abschreckt als weiterhilft.

### [#25](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/25) · beo6 · 2013-02-14

Hallo.

kein Problem.
Das die Dokumentation derzeit etwas Chaotisch ist liegt denke ich daran das Extbase und Fluid backported wird und sich schnell einiges ändern kann. Bin auch noch nicht allzu lange bei Extbase und Fluid, wenn man sich aber einmal hineinbeißt findet man es gar nicht so schlecht. Also nur Mut. ;)

Die liste in der Default.html bedeutet eben nicht das die List.html aufgerufen wird. (da steht schließlich auch nichts von "list"). in der regel steht dort aber auch noch ein <div class="derExtensionKey"> Es ist wie gesagt einfach ein Layout für den Rahmen deiner Views. Wenn du dir die erste zeile der List.html anschaust siehst du das dort das zu verwendende Layout (default) zugewiesen wird.

in der List.html deines Showcase solltest du innerhalb der for each schleife mit
{showcase.showcaseItem.0.category} auf das erste showcaseitem dieses showcase zugreifen können. (vorausgesetzt die parameter showcaseItem und category heißen auch so im Model.)

### [#26](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/26) · martinibianco007 · 2013-02-20

dank beo6 gibts eine lösung:

```html
<f:for each="{showcases}" as="showcase">
<tr>
<td><f:link.action action="show" arguments="{showcase : showcase}"> {showcase.title}</f:link.action></td>
<td><f:link.action action="edit" arguments="{showcase : showcase}">Edit</f:link.action></td>
<td><f:link.action action="delete" arguments="{showcase : showcase}">Delete</f:link.action></td>
            
<td>
   <ul>
     <f:for each="{showcase.showcaseItems}" as="showcaseItem" iteration="iterator">
     <li>geht: {showcaseItem.itemtitle}</li>
     <f:if condition="{iterator.isFirst}">
     <li>erstes Item: {showcaseItem.itemtitle}</li>
     </f:if>
     </f:for>
   </ul>
 </td>
 <!--Geht auch nicht {showcase.showcaseItem.0.itemtitle}-->
</tr>
</f:for>
```

### [#27](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/27) · beo6 · 2013-02-20

wobei mich interessieren würde wie man bei den neuen Versionen auf einzelne Elemente im Object Storage zugreifen kann ohne foreach.

{showcase.showcaseItems.0.itemtitle} funktioniert nicht mehr um das erste Element aufzurufen. Ich denke das liegt am lazy loading und die Elemente erhalten alle immer zufällige IDs. (wobei ich gedacht hätte das die IDs sich nicht bei jedem neu-laden ändern)

### [#28](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/28) · kainobi · 2013-02-20

Nope, liegt nicht am lazy loading. Lass dir mal einen Object-Storage mit f:debug ausgeben, dann siehst du dass die Keys einen Hash-Wert haben (genauer: spl_object_hash). Ich glaube das wurde gemacht, damit nicht mehrmals das gleiche Object drin gespeichert werden kann. Das war aber glaube ich schon immer so, bzw. seit sehr langer Zeit.

Ich würde es über einen VH machen, der dir das gewünschte Element aus dem ObjectStorage holt.

### [#29](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/29) · martinibianco007 · 2013-02-20

@kainobi

wie würde deine lösung dann aussehen?

würdest du ebenfalls sämtlichen output fürs frontend in der List.html der Showcase unterbringen?

oder würdest du in der for each der showcase ein
<f:render .... />

welches die List.html der showcaseItems ausliest unterbringen?
bzw. geht das überhaupt?

### [#30](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/30) · beo6 · 2013-02-20

Ich bin mir fast sicher das der direkte Zugriff unter typo3 4.5 {var.items.0} noch funktionierte.

Außer ich hatte irgendwie ein array daraus gemacht. Werde ich noch mal testen müssen.

### [#31](https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten/31) · kainobi · 2013-02-21

@beo6:
Ich weiss nur, dass es seit einer der ersten Versionen so ist, weil ich mich damals auch gewundert hatte warum das mit {var.items.0} nicht funktioniert und in der Mailinglist nachgefragt habe.

@martinibianco007:
Ich verstehe Deine Frage nicht ganz. Ob Du Partials verwendest oder nicht, ist eigentlich Dir überlassen...

---

Quelle: „Erste Schritte mit Extbase - Wie füttere ich das Plugin mit Daten?“, typo3.net, https://www.typo3.net/d/113871-erste-schritte-mit-extbase-wie-fuettere-ich-das-plugin-mit-daten
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
