Ich möchte das Label für in der TCA Deklaration einer Tabelle über eine Userfunc festlegen.
Laut Beschreibung TCA konfiguriert man das im ctrl-Abschnitt, ungefähr so:
'ctrl' => array(
'title' => 'LLL:EXT:frankeneinkauf/Resources/Private/Language/locallang_db.xml:tx_frankeneinkauf_domain_model_address',
'label' => 'last_name',
'label_userFunc' => 'Tx_Frankeneinkauf_Domain_Model_Address->getRecordTitle',
....
die Funktion sieht so aus :
public function getRecordTitle($params, $pObj){
$params['title'] = 'Whatever';
return $params;
}
Aber angezeigt wird "[Kein Titel]".
Woran könnte das liegen?
Die Funktion wird aufgerufen in der Model-Klasse Tx_Frankeneinkauf_Domain_Model_Address, die in der Extension frankeneinkauf ist. Die Extension ist installiert und läuft.
Dann nehme ich an, ist ein spezielles include nicht mehr nötig.
smeagul schriebDie Funktion wird aufgerufen in der Model-Klasse Tx_Frankeneinkauf_Domain_Model_Address, die in der Extension frankeneinkauf ist. Die Extension ist installiert und läuft.
Dann nehme ich an, ist ein spezielles include nicht mehr nötig.
Was ist das für eine Extension? Bist du dir sicher, daß sie grundsätzlich immer inkludiert ist im Backend? Das glaube ich kaum.
Halte dich an das Beispiel aus der TCA Ref, benutze eine separate Funktion und inkludiere sie wie gefordert, dann funktioniert das auch...
In Zeile 1 der Funktion muss es heißen:
1. public function getRecordTitle(&$params, &$pObj){
(Vorangestelltes '&', da Parameterübergabe per Referenz).