[TYPO3-german] Extbase: Was spricht gegen negative UIDs?

Jo Hasenau info at cybercraft.de
Tue Nov 4 09:09:45 CET 2014


> wenn ich mir aktuell ansehe was für Probleme es mit Flux,Gridelements
> gibt: negative colPos-Werte für CEs wenn sie in einem anderen Element
> eingebunden sind (IRRE). und auf einmal verrutschen Elmeente aus der
> hauptspalte (colPos=0) ins Nirwana (colPos = -1 ohne Parent)

Bei Gridelements hat das einen relativ einfachen Grund: Sämtliche echten 
Content-Elemente fast aller TYPO3-Installationen werden mit Hilfe von 
CONTENT geholt, wobei das einzige Unterscheidungskriterium der 
colPos-Wert ist.

Es gibt zwar ein Feld tx_gridelements_container, mit dem sich eindeutig 
feststellen lässt, ob es sich um ein Kind-Element handelt oder nicht, 
das würde aber bedeuten, dass die where-Clauses aller genannten 
Installationen modifiziert werden müssten, damit Elemente nicht doppelt 
angezeigt werden. WHERE colPos = x AND tx_gridelements_container = 0

Eine dritte Möglichkeit wäre gewesen, die Kind-Elemente in eine eigene 
Tabelle zu packen, damit wären sie aber für andere Dinge wie z.B. 
Section-Menüs oder Teaser nur noch mit zusätzlichem Aufwand für die 
Integratoren verfügbar gewesen.

Wir hatten also die Wahl zwischen einem eindeutigen Wert für colPos und 
entsprechendem Migrationsaufwand für die meisten Anwender und haben uns 
für die nutzerfreundliche Variante entschieden.

Dass Flux und andere Extensions teilweise falsche Werte vergeben, ist 
ein Bug in deren Umgang mit der Kombination von colPos und Container. 
Wenn das Container-Feld einen Wert größer 0 hat, muss der Wert für die 
Spalte -1 sein und umgekehrt. Andere Kombinationen führen übrigens nicht 
direkt ins Nirwana, weil sich die Elemente meistens mit Hilfe des 
DB-Check-Tools (oder dem bösen PHPmyAdmin) ausfindig machen und ändern 
lassen.

Der Unterschied von Gridelements zum Scenario in diesem Thread ist 
allerdings, dass es sich bei tt_content um eine Tabelle handelt, die von 
Anfang an in fast allen TYPO3-Installationen genutzt wurde. Wir mussten 
uns also irgendwie anpassen. Bei einem Neukonstrukt würde ich das nicht 
so machen, sondern immer über ein eigenes Feld gehen.

HDH

Joey

-- 
Diversity:
Die Kunst zusammen unabhängig zu denken
The art of thinking independently together.
--
Facebook: https://www.facebook.com/johasenau
Twitter: http://twitter.com/bunnyfield
Xing: http://contact.cybercraft.de
TYPO3 cookbook (2nd edition): http://www.typo3experts.com


More information about the TYPO3-german mailing list