[TYPO3-german] Extbase-Problem mit 1:n Relation

Peter Linzenkirchner liste at lisardo.de
Mon May 20 13:50:15 CEST 2013


Hallo, 

bah, manchmal seh ich den Wald vor lauter Bäumen nicht ... 

Ich brauche das Feld ja nicht in die showRecordFieldList aufnehmen, dann taucht es im Backend auch nicht auf ... 

OK, damit ist das Problem gelöst bzw. war nie eins. 

Gruß
Peter

Am 19.05.2013 um 19:38 schrieb Peter Linzenkirchner <liste at lisardo.de>:

> Hallo, 
> 
> folgender (eigentlich ziemlich einfacher) Ansatz: 
> 
> Eine Bücherliste soll ausgegeben werden, wobei die Ausstattung der Bücher in einer zweiten Tabelle ausgelagert wurde. Man soll sowohl innerhalb der Bücherliste die Ausstattung sehen können, wie auch (über eine zweite Seite) alle Bücher, die eine bestimmte Ausstattung haben. 
> 
> Also: 
> 
> Model Book, Entity, Aggregate Root (ergibt die einfache Bücher-Liste)
> Model Outfit, Entity, Aggregate Root (ergibt Liste mit Ausstattungen: Gebunden, Paperback etc. mit Liste der Bücher)
> 
> Book und Outfit sind verbunden über eine 1:n Verknüpfung. 
> 
> Das Ganze funktioniert nur, wenn ich im Extension Builder wechselseitige Relationen anlege: 
> Book: n:1 Relation für Outfit
> Outfit: 1:n Relation zu Books
> 
> 1. Eine n:1-Relation wird vom Extension Builder im TCA als einfaches SELECT umgesetzt. Also eine DropDownliste. 
> 2. Eine 1:n-Relation wird als Inline (IRRE) umgesetzt. 
> 
> Fall 1 ist OK, so will ich es haben. 
> Fall 2 ist nicht OK, aber anscheinend unvermeidbar. 
> 
> --- 
> 
> Prinzipiell funktioniert die Ausgabe, ich erhalte das gewünschte Ergebnis im Frontend: 
> - Bücherliste mit Angabe der Ausstattung
> - Liste der Ausstattung und über die show-Action auch die Buchliste, welche diese Ausstattung haben 
> 
> ABER: 
> 
> Das ist fix verknüpft mit diesem TCA. 
> 
> 		'books' => array(
> 			'exclude' => 0,
> 			'label' => 'LLL:EXT:...[]...books',
> 			'config' => array(
> 				'type' => 'inline',
> 				'foreign_table' => 'tx_literatur_domain_model_book',
> 				'foreign_field' => 'outfit',
> 				'maxitems'      => 9999,
> 				'appearance' => array(
> 					'collapseAll' => 1,
> 					'levelLinksPosition' => 'top',
> 					'showSynchronizationLink' => 1,
> 					'showPossibleLocalizationRecords' => 1,
> 					'showAllLocalizationLink' => 1
> 				),
> 			),
> 		),
> Ich kann lediglich wählen zwischen IRRE und SELECT. Wenn ich es komplett rausnehme, dann funktionieren die Objektrelationen in Extbase nicht mehr. 
> 
> Was passiert, wenn sich irgendwann tatsächlich mal 9999 IRRE-Records ansammeln? Ich kann mir nicht vorstellen, dass man das noch bearbeiten kann - ich würde mal behaupten, beim Öffnen stürzt der Browser ab. Ausserdem will ich nicht, dass die Redakteure das überhaupt sehen, sie sollen über Books gehen und das DropDown nutzen. 
> 
> Wie macht man das richtig? 
> 
> Danke!
> Peter
> 
> --
> Xing: http://www.xing.com/profile/Peter_Linzenkirchner
> Web: http://www.typo3-lisardo.de
> Facebook: http://tinyurl.com/lisardo-multimedia
> 
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

--
Xing: http://www.xing.com/profile/Peter_Linzenkirchner
Web: http://www.typo3-lisardo.de
Facebook: http://tinyurl.com/lisardo-multimedia



More information about the TYPO3-german mailing list