[TYPO3-german] Re: Re: Re: Re: eigenes Modul (nur 1 Tabelle): FE-Anzeige abhängig vom BE-dropdown-Menü machbar ?!

Thomas Nussbaumer typo3 at thomasnu.ch
Fri Dec 7 16:32:55 CET 2012


Hallo Steffen

Hier ist *person* das Detail einer Ehrung:
Feibert  Petra 	2010  geehrt als Pfälzischer Schachsportler des Jahres.

Von solchen Beziehungen geht Extbase aus. m:n ist schwieriger zu 
realisieren.

Gruss. Thomas

Am 07.12.2012 16:09, schrieb Steffen Liebig:
> Hallo Thomas
>
> danke für deine Antwort.
>
> Mir wurde die 2. Tabelle im 1. Durchlauf quer angelegt, ich hatte also
> eine Nummer (214, frag mich nicht wieso), die quasi alle Ehrungen
> abdeckte. Völliger Quatsch *lach*.
>
> Sowas Ähnliches von wegen Verwechslung der Reihenfolge kam mir auch in
> den Sinn. Ich hab nur die Logik nicht kapiert, weshalb eine Ehrung
> Personen haben soll (dabei gehts ja nur ums Sortieren *ächz*) und nicht
> umgekehrt. Vielleicht hab ich deswegen zuerst die Personentabelle
> angelegt. 1:n stimmte ja, in Ermangelung einer konkreten Erinnerung
> nehme ich an, dass nur die Richtung falsch war (?!) und der andere Kram
> dann dazukam.
>
> Zumal es durchaus möglich ist, dass eine Person mehrfach geehrt wird, zB
> erst mit Bronze, dann mit Silber und am Ende mit Gold (Ehrennadel -> m:n
> ?!). Da die alte Seite aber in der Anzeige ohnehin nach Art sortiert,
> macht ein mehrfaches Auftreten derselben Namen wohl kaum was aus. Man
> legt halt mehrere Datensätze an, was solls.
>
> Ich probier das nachher aus, nu iss erstmal Einkaufen angesagt.
>
> Cu, Steffen
>
> Am 06.12.2012 19:09, schrieb Thomas Nussbaumer:
>> Hallo Steffen
>>
>> Du hast die Tabellen verwechselt. Tabelle 1 muss ehrung (nr [zum
>> Sortien], titel) sein, die auf person (name, vorname, jahr, text,
>> verstorben) verweist. 1:n-Beziehung: mehrere Personen in einer
>> Ehrungsart, pro Person eine Ehrung. Weitere Felder legt der Extension
>> Builder an. Beachte auch die Einzahl in der Bezeichnung. Ein Datensatz
>> enthält eine Person (for each="{personen}" as="person"). Vergleiche auch
>> mit bezirk->verband.
>>
>> Mit diesen Tabellenbeziehungen hatte ich in letzter Zeit ein Projekt
>> erarbeitet. Es entspricht deiner Vorlage. Zusätzlich können die Editoren
>> im FE die Personen bearbeiten und weitere eintragen bei neuen Ehrungen.
>> Dazu braucht es kein Dropdown-Feld, da die Bearbeitung in der
>> Detailansicht erfolgt wo die Ehrungsart bereits vorgegeben ist.
>>
>> Wie weit du das Grundgerüst, das der Extension Builder erzeugt, noch
>> bearbeiten musst um die gewünschten Funktionen zu erhalten, entzieht
>> sich meiner Kenntnis, da ich nicht damit arbeite. Ich schlage vor, die
>> Tabellenstruktur neu auf zu setzen, um zu sehen was für Detailprobleme
>> sich noch stellen.
>>
>> Ich hoffe dass du damit weiter kommst. Für weitere Fragen bin ich dir
>> gerne behilflich.
>>
>> Gruss. Thomas
>>
>> Am 05.12.2012 16:20, schrieb Steffen Liebig:
>>> hmpf, jetzt bin ich doch wieder durcheinandergekommen
>>>
>>> die korrekte Addresse für die Vorlage, was die Funktionen des Moduls
>>> angeht, ist diese:
>>>
>>> http://www.pfaelzischer-schachbund.de/index.php?goto=ehrentafel
>>>
>>> Am 05.12.2012 15:12, schrieb Steffen Liebig:
>>>> Hallo zusammen,
>>>>
>>>> ich zimmere mir gerade ein Modul zur Anzeige von Ehrungen verdiernter
>>>> Verbandsmitglieder. Getreu der Vorlage auf
>>>> www.pfalzischer-schachbund.de/Ehrungen soll es Folgendes können:
>>>>
>>>> - in der List-Ansicht nur die Arten der Ehrungen und evtl die Anzahl
>>>> der Einträge je Ehrung anzeigen
>>>> - bei Klick auf die Einzelansicht springen und die Liste der Namen in
>>>> Abhängigkeit von der Ehrung anzeigen
>>>> -> gewünschte FE-Sortierung: verstorben vor nicht verstorben und
>>>> jeweils alphabetisch (hatte ich anderswo schon verwirklicht, aber
>>>> nur mit einem Argument)
>>>> - im BE eine selector box für die Redakteure sowie was zum Abhaken für
>>>> "verstorben"
>>>>
>>>> So weit, so "einfach", dachte ich.
>>>>
>>>> -> "Verstorben" als boolean definiert, läuft
>>>> -> select-field aus 2. Tabelle "Ehrungen" füttern *waaaaah* tut NICHT
>>>> -> es kommt kein select-field, sondern ein Knopf "create new" (?!?!)
>>>> -> Kategorien konnte ich anlegen, aber sie wurden nicht korrekt
>>>> bezeichnet und befüllten auch kein select-field/dropdown o. Ä.
>>>> -> umgestellt auf EINE Tabelle mit select-field, dessen Optionen ich
>>>> per TCA-Array definiert habe (10 feste Bezeichnungen, gut iss)
>>>>
>>>> Ergebnis: Dateneingabe problemlos, FE sträubt sich "natürlich"
>>>>
>>>> -> da keine 2. Tabelle mehr vorhanden ist, kann ich die Titel der
>>>> Ehrungen nur über das selector-feld beziehen (in der DB stehen eh nur
>>>> die ID's)
>>>>
>>>> -> per if-condition geht nicht viel, da diese wohl ein for each
>>>> voraussetzt...damit bekomme ich aber für JEDEN Testeintrag die Ehrung
>>>> angezeigt (=2mal "Ehrenmitglied" statt 1mal zum Anklicken für die
>>>> Komplettliste) - die Schleife lässt sich nur auf das Objekt beziehen,
>>>> also "for each="{personens}" as="personen", was nicht Ziel der Sache
>>>> ist
>>>>
>>>>
>>>> -> an dieser Stelle sei gesagt, dass ich in der 1. Version im Template
>>>> nicht mit dem fluid von "Ehrungen" arbeiten konnte...default ist
>>>> "Personen" - der Pfad zum Template liess sich nicht verwendbar ändern,
>>>> geschweige denn dass damit geklärt gewesen wäre, wie ich zur Anzeige
>>>> der
>>>> Personenliste von "Ehrungen" aus wieder auf "Personen" hätte zugreifen
>>>> sollen; ergo: Adaptionen aus meinem anderen Modul (bezirksweise Anzeige
>>>> von Vereinen) verliefen sich im Sande
>>>>
>>>> Stand jetzt also:
>>>>
>>>> - 1 Tabelle (name, vorname, jahr, text, ehrung als festes dropdown,
>>>> verstorben als boolean)
>>>>
>>>> - Code 1 in der Ursprungsfassung gibt alle Felder aus (Ehrung 1-x,
>>>> verstorben 1/leer)
>>>>
>>>> - Code 2 als Test:
>>>> <f:for each="{personens}" as="personen">
>>>> <tr><td>
>>>> <f:alias map="{test: '1'}">
>>>> <f:if condition="{personen.ehrung} == {test}">
>>>> <f:then>
>>>> <f:link.action action="show" arguments="{personen :
>>>> personen}">Ehrenvorsitzende des PSB</f:link.action>
>>>> </f:then>
>>>> </f:if>
>>>> </f:alias>
>>>> </td></tr>
>>>>
>>>> <tr><td>
>>>> <f:alias map="{test: '2'}">
>>>> <f:if condition="{personen.ehrung} == {test}">
>>>> <f:then>
>>>> <f:link.action action="show" arguments="{personen :
>>>> personen}">Ehrenmitglieder des PSB</f:link.action>
>>>> </f:then>
>>>> </f:if>
>>>> </f:alias>
>>>> </td></tr>
>>>> </f:for>
>>>>
>>>> Ergebnis wie geschildert, siehe
>>>> http://www.pfaelzischer-schachbund.de/typo3/index.php?id=39.
>>>>
>>>> --> alias raus, array rein hat nicht funktioniert
>>>> --> andere Befehle (den ganzen Vormittag quergelesen) brachten auch
>>>> keinen Erfolg
>>>>
>>>> Frage: lässt sich das Ganze ohne 2. Tabelle (oder gar eine 3.: mm für
>>>> 1:n-Beziehung) so hinbekommen, dass es dasselbe macht wie die Vorlage ?
>>>> Was habe ich evtl noch übersehen ?
>>>>
>>>> Besten Dank für jede Anregung
>>>>
>>>>
>>>> Steffen
>>>
>>
>



More information about the TYPO3-german mailing list