Zum Inhalt springen

TYPO 4.3 & Extbase-Extensionentwicklung: Frage zur Datenübergabe

Erstellt am 11. Januar 2010 · 1 Antwort · letzte Antwort am 11. Januar 2010

Tags: FlexForms, TYPO3 4, Frage

fragile74 ·

Hi,
ich programmiere derzeit meine erste Extension mit Extbase/Fluid und frage mich gerade, ob sich an der Art, Backendfelder anzulegen und deren Werte an die Extension zu übergeben etwas geändert hat - falls ja, hätte jemand einen Link zu einem Tutorial/API-Doku von Extbase/FLOW3 parat ?

Thx in advance 🙂,
FraGiLe

fragile74 ·

Sodale,
nach einigen Mühen und wälzen von API-Dokus hab ichs hinbekommen 🙂.
Man nehme:
Eine MVC-Extension
Ein Flexform-XML mit spezieller Syntax
...und schon stehen die Backend-Flexform-Felder im Controller via $this->settings['...'] zur Verfügung 🙂:

$array = array($this->settings['Ueberschrift'],$this->settings['Punkt1'],$this->settings['Punkt2'],$this->settings['Punkt3'],$this->settings['Preis']);

Die flexform-xml muss dazu natürlich in der ext_tables.php registriert werden und z.b. folgende Syntax enthalten:

<T3DataStructure>
	<sheets>
		<sDEF>
			<ROOT>
				<TCEforms>
					<sheetTitle>Allgemein</sheetTitle>
				</TCEforms>
				<type>array</type>
				<el>
					<settings.Ueberschrift>
						<TCEforms>
							<label>Ueberschrift</label>
							<config>
								<type>input</type>
								<size>30</size>
								<eval>trim</eval>
								<default>Ueberschrift</default>
							</config>
						</TCEforms>
					</settings.Ueberschrift>
					<settings.Punkt1>
						<TCEforms>
							<label>Punkt 1</label>
							<config>
								<type>input</type>
								<size>30</size>
								<eval>trim</eval>
								<default>Test 1</default>
							</config>
						</TCEforms>
					</settings.Punkt1>
					<settings.Punkt2>
						<TCEforms>
							<label>Punkt 2</label>
							<config>
								<type>input</type>
								<size>30</size>
								<eval>trim</eval>
								<default>Test 2</default>
							</config>
						</TCEforms>
					</settings.Punkt2>
					<settings.Punkt3>
						<TCEforms>
							<label>Punkt 3</label>
							<config>
								<type>input</type>
								<size>30</size>
								<eval>trim</eval>
								<default>Test 3</default>
							</config>
						</TCEforms>
					</settings.Punkt3>
					<settings.Preis>
						<TCEforms>
							<label>Preis</label>
							<config>
								<type>input</type>
								<size>30</size>
								<eval>trim</eval>
								<default>Preis</default>
							</config>
						</TCEforms>
					</settings.Preis>
				</el>
			</ROOT>
		</sDEF>
	</sheets>
</T3DataStructure>

Wichtig sind die "settings" - Konstrukte, damit der Mechanismus im Controller funktioniert - very easy, sehr schön zu programmieren 😉...