<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stephanschlegel.de/index.php?action=history&amp;feed=atom&amp;title=Extbase_-_m%3An_Verkn%C3%BCpfung</id>
	<title>Extbase - m:n Verknüpfung - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stephanschlegel.de/index.php?action=history&amp;feed=atom&amp;title=Extbase_-_m%3An_Verkn%C3%BCpfung"/>
	<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;action=history"/>
	<updated>2026-05-06T22:49:44Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikizone</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21054&amp;oldid=prev</id>
		<title>37.49.33.84 am 30. Juni 2015 um 17:29 Uhr</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21054&amp;oldid=prev"/>
		<updated>2015-06-30T17:29:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 30. Juni 2015, 17:29 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l150&quot; &gt;Zeile 150:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 150:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>37.49.33.84</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21053&amp;oldid=prev</id>
		<title>37.49.33.84 am 30. Juni 2015 um 17:29 Uhr</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21053&amp;oldid=prev"/>
		<updated>2015-06-30T17:29:17Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 30. Juni 2015, 17:29 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l149&quot; &gt;Zeile 149:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 149:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;class Category extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity {&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;class Category extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>37.49.33.84</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21052&amp;oldid=prev</id>
		<title>37.49.33.84 am 30. Juni 2015 um 17:28 Uhr</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21052&amp;oldid=prev"/>
		<updated>2015-06-30T17:28:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 30. Juni 2015, 17:28 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l54&quot; &gt;Zeile 54:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 54:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	KEY uid_foreign (uid_foreign)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	KEY uid_foreign (uid_foreign)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;);&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;mysql&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;TCA Konfiguration&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;TCA Konfiguration&amp;#039;&amp;#039;&amp;#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>37.49.33.84</name></author>
	</entry>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21051&amp;oldid=prev</id>
		<title>37.49.33.84: Die Seite wurde neu angelegt: „http://www.typo3tiger.de/blog/post/typo3-bidirektionale-mm-relation-tca-extbase.html (2015-06)  TYPO3 - Bidirektionale m:m Relation (TCA &amp; Extbase) Codesnippet…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Extbase_-_m:n_Verkn%C3%BCpfung&amp;diff=21051&amp;oldid=prev"/>
		<updated>2015-06-30T17:27:58Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „http://www.typo3tiger.de/blog/post/typo3-bidirektionale-mm-relation-tca-extbase.html (2015-06)  TYPO3 - Bidirektionale m:m Relation (TCA &amp;amp; Extbase) Codesnippet…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;http://www.typo3tiger.de/blog/post/typo3-bidirektionale-mm-relation-tca-extbase.html (2015-06)&lt;br /&gt;
&lt;br /&gt;
TYPO3 - Bidirektionale m:m Relation (TCA &amp;amp; Extbase)&lt;br /&gt;
Codesnippet zum Erstellen einer bidirektionalen m:m-Relation in TYPO3 mit TCA Konfiguration und Extbase Model.&lt;br /&gt;
&lt;br /&gt;
Gepostet am 01.02.2015&lt;br /&gt;
Zwischen den beiden Models Seminar und Category soll eine m:m Relation erstellt werden. Die Relation soll im TYPO3 Backend sowie im Extbase-Kontext von beiden Seiten aus zugänglich sein (bidirektional).&lt;br /&gt;
&lt;br /&gt;
Auf &amp;#039;&amp;#039;&amp;#039;Datenbankebene&amp;#039;&amp;#039;&amp;#039; ist &amp;#039;&amp;#039;&amp;#039;in beiden Tabellen eine int-Spalte&amp;#039;&amp;#039;&amp;#039; erforderlich, idealerweise benannt nach dem referenzierten Modell (also categories und seminars). Diese Spalten sind eigentlich nur für Extbase erforderlich, die eigentliche Relation wird in einer &amp;#039;&amp;#039;&amp;#039;Relationstabelle tx_myext_seminar_category_mm&amp;#039;&amp;#039;&amp;#039; gespeichert. Wichtig für eine Sortiermöglichkeit auch von der Gegenseite aus ist hierbei die Spalte sorting_foreign.&lt;br /&gt;
&lt;br /&gt;
Im &amp;#039;&amp;#039;&amp;#039;TCA&amp;#039;&amp;#039;&amp;#039; ist für beide Tabellen zunächst eine gewöhnliche &amp;#039;&amp;#039;&amp;#039;Konfiguration des Relationsfeldes&amp;#039;&amp;#039;&amp;#039; (categories bzw. seminars) als m:m-Relation erforderlich (type=select, foreign_table, foreign_table_where und MM). Zusätzlich muss auf der Gegenseite (category-Tabelle) über MM_opposite_field die Spalte der referenzierten Tabelle definiert werden.&lt;br /&gt;
&lt;br /&gt;
Im jeweiligen &amp;#039;&amp;#039;&amp;#039;Extbase Model&amp;#039;&amp;#039;&amp;#039; werden die Properties categories und seminars als Objectstorage vom Type des referenzierten Models definiert (abhängig vom Anwendungsfall als @lazy). Es fehlen dann nur noch die Getter und Setter (add, remove, get und set).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Datenbank&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
#&lt;br /&gt;
# Table structure for table &amp;#039;tx_myext_domain_model_seminar&amp;#039;&lt;br /&gt;
#&lt;br /&gt;
CREATE TABLE tx_myext_domain_model_seminar (&lt;br /&gt;
	uid int(11) NOT NULL auto_increment,&lt;br /&gt;
	pid int(11) DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	title varchar(255) DEFAULT &amp;#039;&amp;#039; NOT NULL,&lt;br /&gt;
	categories int(11) unsigned DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	#...&lt;br /&gt;
	PRIMARY KEY (uid),&lt;br /&gt;
	KEY parent (pid),&lt;br /&gt;
	KEY language (l10n_parent,sys_language_uid)&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Table structure for table &amp;#039;tx_myext_domain_model_category&amp;#039;&lt;br /&gt;
#&lt;br /&gt;
CREATE TABLE tx_myext_domain_model_category (&lt;br /&gt;
	uid int(11) NOT NULL auto_increment,&lt;br /&gt;
	pid int(11) DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	title varchar(255) DEFAULT &amp;#039;&amp;#039; NOT NULL,&lt;br /&gt;
	seminars int(11) unsigned DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	#...&lt;br /&gt;
	PRIMARY KEY (uid),&lt;br /&gt;
	KEY parent (pid),&lt;br /&gt;
	KEY language (l10n_parent,sys_language_uid)&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
#&lt;br /&gt;
# Table structure for table &amp;#039;tx_myext_seminar_category_mm&amp;#039;&lt;br /&gt;
#&lt;br /&gt;
CREATE TABLE tx_myext_seminar_category_mm (&lt;br /&gt;
	uid_local int(11) unsigned DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	uid_foreign int(11) unsigned DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	sorting int(11) unsigned DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	sorting_foreign int(11) unsigned DEFAULT &amp;#039;0&amp;#039; NOT NULL,&lt;br /&gt;
	KEY uid_local (uid_local),&lt;br /&gt;
	KEY uid_foreign (uid_foreign)&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/mysql&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;TCA Konfiguration&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
$TCA[&amp;#039;tx_myext_domain_model_seminar&amp;#039;] = array(&lt;br /&gt;
    /* ... */&lt;br /&gt;
    &amp;#039;columns&amp;#039; =&amp;gt; array(&lt;br /&gt;
        &amp;#039;categories&amp;#039; =&amp;gt; array(&lt;br /&gt;
            &amp;#039;exclude&amp;#039; =&amp;gt; 1,&lt;br /&gt;
            &amp;#039;label&amp;#039; =&amp;gt; &amp;#039;LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_seminar.categories&amp;#039;,&lt;br /&gt;
            &amp;#039;config&amp;#039; =&amp;gt; array(&lt;br /&gt;
                &amp;#039;type&amp;#039; =&amp;gt; &amp;#039;select&amp;#039;,&lt;br /&gt;
                &amp;#039;foreign_table&amp;#039; =&amp;gt; &amp;#039;tx_myext_domain_model_category&amp;#039;,&lt;br /&gt;
                &amp;#039;MM&amp;#039; =&amp;gt; &amp;#039;tx_myext_seminar_category_mm&amp;#039;,&lt;br /&gt;
                &amp;#039;foreign_table_where&amp;#039; =&amp;gt; &amp;#039; AND tx_myext_domain_model_category.pid=###CURRENT_PID### ORDER BY tx_myext_domain_model_category.title &amp;#039;,&lt;br /&gt;
                &amp;#039;minitems&amp;#039; =&amp;gt; 0,&lt;br /&gt;
                &amp;#039;maxitems&amp;#039; =&amp;gt; 99,&lt;br /&gt;
                /* ... */&lt;br /&gt;
            ),&lt;br /&gt;
        ),&lt;br /&gt;
    ),&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
$TCA[&amp;#039;tx_myext_domain_model_category&amp;#039;] = array(&lt;br /&gt;
    /* ... */&lt;br /&gt;
    &amp;#039;columns&amp;#039; =&amp;gt; array(&lt;br /&gt;
        &amp;#039;seminars&amp;#039; =&amp;gt; array(&lt;br /&gt;
            &amp;#039;exclude&amp;#039; =&amp;gt; 1,&lt;br /&gt;
            &amp;#039;label&amp;#039; =&amp;gt; &amp;#039;LLL:EXT:myext/Resources/Private/Language/locallang_db.xml:tx_myext_domain_model_category.seminars&amp;#039;,&lt;br /&gt;
            &amp;#039;config&amp;#039; =&amp;gt; array(&lt;br /&gt;
                &amp;#039;type&amp;#039; =&amp;gt; &amp;#039;select&amp;#039;,&lt;br /&gt;
                &amp;#039;foreign_table&amp;#039; =&amp;gt; &amp;#039;tx_myext_domain_model_seminar&amp;#039;,&lt;br /&gt;
                &amp;#039;MM&amp;#039; =&amp;gt; &amp;#039;tx_myext_seminar_category_mm&amp;#039;,&lt;br /&gt;
                &amp;#039;MM_opposite_field&amp;#039; =&amp;gt; &amp;#039;seminars&amp;#039;,&lt;br /&gt;
                &amp;#039;foreign_table_where&amp;#039; =&amp;gt; &amp;#039; AND tx_myext_domain_model_seminar.pid=###CURRENT_PID### ORDER BY tx_myext_domain_model_seminar.title &amp;#039;,&lt;br /&gt;
                &amp;#039;minitems&amp;#039; =&amp;gt; 0,&lt;br /&gt;
                &amp;#039;maxitems&amp;#039; =&amp;gt; 99,&lt;br /&gt;
                /* ... */&lt;br /&gt;
            ),&lt;br /&gt;
        ),&lt;br /&gt;
    ),&lt;br /&gt;
);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Extbase Model&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;php&amp;quot;&amp;gt;&lt;br /&gt;
class Seminar extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity {&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Categories&lt;br /&gt;
	 *&lt;br /&gt;
	 * @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage&amp;lt;\Vendor\Myext\Domain\Model\Category&amp;gt;&lt;br /&gt;
	 * @lazy&lt;br /&gt;
	 */&lt;br /&gt;
	protected $categories;&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Adds a Category&lt;br /&gt;
	 *&lt;br /&gt;
	 * @param \Vendor\Myext\Domain\Model\Category $category&lt;br /&gt;
	 * @return void&lt;br /&gt;
	 */&lt;br /&gt;
	public function addCategory(\CVendor\Myext\Domain\Model\Category $category) {&lt;br /&gt;
		$this-&amp;gt;categories-&amp;gt;attach($category);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Removes a Category&lt;br /&gt;
	 *&lt;br /&gt;
	 * @param \CVendor\Myext\Domain\Model\Category $categoryToRemove The Category to be removed&lt;br /&gt;
	 * @return void&lt;br /&gt;
	 */&lt;br /&gt;
	public function removeCategory(\Vendor\Myext\Domain\Model\Category $categoryToRemove) {&lt;br /&gt;
		$this-&amp;gt;categories-&amp;gt;detach($categoryToRemove);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Returns the Categories&lt;br /&gt;
	 *&lt;br /&gt;
	 * @return \TYPO3\CMS\Extbase\Persistence\ObjectStorage&amp;lt;\Vendor\Myext\Domain\Model\Category&amp;gt; $categories&lt;br /&gt;
	 */&lt;br /&gt;
	public function getCategories() {&lt;br /&gt;
		return $this-&amp;gt;categories;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Sets the Categories&lt;br /&gt;
	 *&lt;br /&gt;
	 * @param \TYPO3\CMS\Extbase\Persistence\ObjectStorage&amp;lt;\Vendor\Myext\Domain\Model\Category&amp;gt; $categories&lt;br /&gt;
	 * @return void&lt;br /&gt;
	 */&lt;br /&gt;
	public function setCategories(\TYPO3\CMS\Extbase\Persistence\ObjectStorage $categories) {&lt;br /&gt;
		$this-&amp;gt;categories = $categories;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class Category extends \TYPO3\CMS\Extbase\DomainObject\AbstractEntity {&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Seminars&lt;br /&gt;
	 *&lt;br /&gt;
	 * @var \TYPO3\CMS\Extbase\Persistence\ObjectStorage&amp;lt;\Vendor\Myext\Domain\Model\Seminar&amp;gt;&lt;br /&gt;
	 * @lazy&lt;br /&gt;
	 */&lt;br /&gt;
	protected $seminars;&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Adds a Seminar&lt;br /&gt;
	 *&lt;br /&gt;
	 * @param \Vendor\Myext\Domain\Model\Seminar $seminar&lt;br /&gt;
	 * @return void&lt;br /&gt;
	 */&lt;br /&gt;
	public function addSeminar(\Vendor\Myext\Domain\Model\Seminar$seminar) {&lt;br /&gt;
		$this-&amp;gt;seminars-&amp;gt;attach($seminar);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Removes a Seminar&lt;br /&gt;
	 *&lt;br /&gt;
	 * @param \Vendor\Myext\Domain\Model\Seminar $seminarToRemove The Seminar to be removed&lt;br /&gt;
	 * @return void&lt;br /&gt;
	 */&lt;br /&gt;
	public function removeSeminar(\Vendor\Myext\Domain\Model\Seminar $seminarToRemove) {&lt;br /&gt;
		$this-&amp;gt;seminars-&amp;gt;detach($seminarToRemove);&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Returns the Seminars&lt;br /&gt;
	 *&lt;br /&gt;
	 * @return \TYPO3\CMS\Extbase\Persistence\ObjectStorage&amp;lt;\Vendor\Myext\Domain\Model\Seminar&amp;gt; $seminars&lt;br /&gt;
	 */&lt;br /&gt;
	public function getSeminars() {&lt;br /&gt;
		return $this-&amp;gt;seminars;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
	/**&lt;br /&gt;
	 * Sets the Seminars&lt;br /&gt;
	 *&lt;br /&gt;
	 * @param \TYPO3\CMS\Extbase\Persistence\ObjectStorage&amp;lt;\Vendor\Myext\Domain\Model\Seminar&amp;gt; $seminars&lt;br /&gt;
	 * @return void&lt;br /&gt;
	 */&lt;br /&gt;
	public function setSeminars(\TYPO3\CMS\Extbase\Persistence\ObjectStorage $seminars) {&lt;br /&gt;
		$this-&amp;gt;seminars = $seminars;&lt;br /&gt;
	}&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>37.49.33.84</name></author>
	</entry>
</feed>