Hallo Forum,
ich habe derzeit das Vergnügen eine Typo3 basierte Web-Applikation anzupassen und habe dafür mehrere Extensions schreiben müssen. Soweit funktioniert auch alles, allerdings wurde der Wunsch an mich herangetragen folgende Problematik zu lösen:
Eine der Extensions umfasst eine neue Tabelle 'contact_persons', diese werden über Web->Liste angelegt und administriert, das funzt soweit auch alles gut. ABER: ich habe über den Kickstarter eine Relation zur pages Tabelle angelegt um die Personen dort Seiten zuordnen zu können und im entsprechenden select feld tauchen nun die id's der Tabelle auf. Gibt es eine simple Möglichkeit dort ein anderes Feld der Tabelle anzeigen zu lassen? Wenn die Site live geht, werden ca. 250 Personen in der Tabelle gelisted sein und das ist dann geringfügig unübersichtlich.
Vielen Dank & Grüße,
Hagbard
und im entsprechenden select feld tauchen nun die id's der Tabelle auf
Welcher Tabelle? Von pages? Generell würd ich das so ja nicht machen, wenn etwas einer Seite zugeordnet ist, dann würd ich es einfach auf dieser Seite anlegen (sprich die pid auf die Seiten UID setzen). Aber pages sollte eigentlich eine entsprechende TCA config haben, so dass Du die Namen der Seiten siehst. Falls Du deine Extensiontabelle meinst, da müsstest du Deine TCA mal anpassen.
Sorry, da hab ich mich wohl nicht klar genug ausgedrückt. Im Reiter "Erweitert" der Seiteneigenschaften, gibt es nun ein Dropdown, wo man die Personen auswählen kann. Dieses Dropdown beinhaltet die IDs der Personen, allerdings ist es Wunsch des AGs das dort die Namen der Personen auftauchen... Kann ich das über die TCA regeln?
Hab halt nicht so die Erfahrung mit Typo3. :/
Genau, schau mal in die ext_tables oder TCA Datei deiner Extension, du müsstest sowas in der Art hier finden:
$TCA['deine_datenbank_tabelle'] = array (
'ctrl' => array (
'title' => 'LLL:EXT:blablabla',
'label' => 'dein_datenbank_feld',
Die Zeile mit dem "label" ist interessant für Dich. Könnte sein, dass das gar nicht gesetzt ist oder eben auf 'uid', du müsstest es halt auf den Namen des Datenbankfeldes setzen, das Du im Dropdown haben willst.
kitsunet schrieb
Genau, schau mal in die ext_tables oder TCA Datei deiner Extension, du müsstest sowas in der Art hier finden:
$TCA['deine_datenbank_tabelle'] = array (
'ctrl' => array (
'title' => 'LLL:EXT:blablabla',
'label' => 'dein_datenbank_feld',
Die Zeile mit dem "label" ist interessant für Dich. Könnte sein, dass das gar nicht gesetzt ist oder eben auf 'uid', du müsstest es halt auf den Namen des Datenbankfeldes setzen, das Du im Dropdown haben willst.
Das war genau das, was ich gesucht hab und mit deinem Hinweis wars ne Sache von 2 Minuten das zu ändern. Me Gusta! Vielen Dank!
Ich muss aber echt gestehen, dass ich Typo3, grade bei derlei Sachen als unglaublich sperrig empfinde. Muss dazu sagen, dass ich normalerweise mit Rahmenwerken, wie Django oder Ruby on Rails unterwegs bin & eher selten bis gar nicht mit CMS Systemen arbeite, aber ich empfinde Typo3 da als wesentlich schwerer nachzuvollziehen.
Wie dem auch sei. Vielen Dank für die Hilfe!
Ich muss aber echt gestehen, dass ich Typo3, grade bei derlei Sachen als unglaublich sperrig empfinde. Muss dazu sagen, dass ich normalerweise mit Rahmenwerken, wie Django oder Ruby on Rails unterwegs bin & eher selten bis gar nicht mit CMS Systemen arbeite, aber ich empfinde Typo3 da als wesentlich schwerer nachzuvollziehen.
Yep, ist ja auch schon alt das ganze. Speziell dieser TCA Kram.
Vielleicht ist TYPO3 Flow was für Dich: http://flow.typo3.org