[TYPO3-german] [gelöst] Anzeige von uid in feld für datenbankrelation?

"M. Graßhoff" m.grasshoff at signup-design.de
Thu Oct 22 14:56:39 CEST 2009


David Bruchmann schrieb:
>
>
> ----- Ursprüngliche Nachricht -----
> Von:        M. Graßhoff <m.grasshoff at signup-design.de>
> Gesendet:   Donnerstag, 22. Oktober 2009 11:55:18
> An:         German TYPO3 Userlist <typo3-german at lists.typo3.org>
> CC:
> Betreff:    Re: [TYPO3-german] Anzeige von uid in feld für 
> datenbankrelation?
>> Hi David,
>> zunächst schonmal vielen Dank. Das meinte ich allerdings so nicht.
>> Wenn ich in der Listenansicht im Backend bin, bekomme ich auf diese 
>> Weise unterhalb meines Extensiontitels zusätzlich die uid nach deiner 
>> Änderung angezeigt.
>> (siehe screenshot 1: http://as-beschriftung.de/screenshot1.jpg )
>>
>> Dort sollte sich aber nichts ändern. Ziel ist etwas anderes:
>>
>> Klicke ich nun auf Bearbeiten des Datensatzes, dann erscheinen die zu 
>> bearbeitenden Felder, die von meiner Extension bereitgestellt werden.
>> Und zwar hier im Beispiel 'Titel', 'Inhalt (Eine Datenbankrelation 
>> auf tt_content') und 'url'.
>> (siehe screenshot 2: http://as-beschriftung.de/screenshot.jpg )
>>
>> Die Datensätze, die ich mir jetzt aus einem bestimmten Sysordner in 
>> Inhalt hereinklicke, werden nur mit Titel angezeigt. Hat der 
>> Datensatz diesen allerdings nicht, steht hier nur [Kein Inhalt].
>> Deshalb möchte ich an dieser Stelle zusätzlich die uid einbauen. Gibt 
>> es für tt_content auch eine Datei, wo ich das ändern kann?
>>
>> Gruß und vielen Dank
>> Marko
>>
>>
>> David Bruchmann schrieb:
>>>
>>>
>>> ----- Ursprüngliche Nachricht -----
>>> Von:        M. Graßhoff <m.grasshoff at signup-design.de>
>>> Gesendet:   Donnerstag, 22. Oktober 2009 10:44:36
>>> An:         German TYPO3 Userlist <typo3-german at lists.netfielders.de>
>>> CC:
>>> Betreff:    [TYPO3-german] Anzeige von uid in feld für 
>>> datenbankrelation?
>>>> Hallo Leute,
>>>> ich habe da eine Frage, die doch gar nicht so schwer zu machen sein 
>>>> kann..
>>>> Eigene Extension gebaut mit Relation auf tt_content.
>>>>
>>>> Jetzt erscheint in der Anzeige im BE in meiner Relation allerdings 
>>>> immer der Titel des Datensatzes.
>>>> Wie kann ich dort die uid anzeigen lassen?
>>>>
>>>> Siehe Screenshot:
>>>> http://as-beschriftung.de/screenshot.jpg
>>>>
>>>> Für Ideen wäre ich wie immer sehr dankbar!
>>>>
>>>> Gruß,
>>>> Marko
>>>
>>> Hi Marko,
>>>
>>> in der Datei ext_tables.php Deiner Erweiterung ist für die Tabelle 
>>> ein Array definiert:
>>>
>>> $TCA[TABELLEN_NAME] = array (
>>>     'ctrl' => array (
>>>         'title'     => 
>>> 'LLL:EXT:[EXTENSION_KEY]/locallang_db.xml:[TABELLEN_NAME]',
>>>         'label'     => 'title',
>>>         'tstamp'    => 'tstamp',
>>>         'crdate'    => 'crdate',
>>>         ...
>>>     )
>>> );
>>>
>>> Unter 'label' => '...' brauchst Du nur das Feld einzutragen, dessen 
>>> Wert  angezeigt werden soll:
>>> 'label'     => 'uid',
>>>
>>> Da die Anzeige nur der uid meist wirklich hinderlich ist, 
>>> nachfolgend eine alternative Methode, die beides anzeigt:
>>>
>>> $TCA[TABELLEN_NAME] = array (
>>>     'ctrl' => array (
>>>         'title'     => 
>>> 'LLL:EXT:[EXTENSION_KEY]/locallang_db.xml:[TABELLEN_NAME]',
>>>         'label'     => 'uid',
>>>         'label_alt' => 'title',
>>>         'label_alt_force' => '1',
>>>         'tstamp'    => 'tstamp',
>>>         'crdate'    => 'crdate',
>>>         ...
>>>     )
>>> );
>>>
>>> Die Keys label_alt und label_alt_force sorgen dafür, daß die Anzeige 
>>> verändert wird und herauskommen sollte dann:
>>> "uid, title"
>>>
>>> Details kannst Du in der API (doc_core_api) nachlesen.
>>>
>>> Viele Grüße
>>> David
>
> Hi Marko,
> Generell kannst Du den TCA für tt_content auch verändern, Beispiel:
>
>
> t3lib_div::loadTCA('tt_content');
> $tempColumns = Array (
>     'pi_flexform' => Array (
>         'config' => array(
>             'treeParentField' => 'parent_uid',
>         ),
>     ),
> );     
> $TCA['tt_content']['types']['list']['subtypes_addlist'][$_EXTKEY.'_pi2']='pi_flexform'; 
>
>
> Wie man aber das Label von tt_content überschreiben kann, da bin ich 
> momentan überfragt. Du müßtest die vorher geposteten Einstellungen mit 
> label, label_alt und label_alt_force kombinieren mit einem Aufruf, der 
> per Konfigurationsionsarray, der einfach das Label mir Deinen 
> Einstellungen überschreibt. Nur den entsprechenden Aufruf weiß ich 
> gerade nicht, definiert wird das durch Arraykeys wie 
> 'subtypes_addlist', 'subtypes_excludelist', etc.
>
> Viele Grüße
> David
>

Hi,
also ich habs jetzt gefunden: Im Pfad /typo3/sysext/cms/ die Datei 
ext_tables.php editieren:

$TCA['tt_content'] = array (
    'ctrl' => array (
        'label' => 'header',
        *'label_alt' => 'subheader,bodytext,uid',
        'label_alt_force' => '1',*
        'sortby' => 'sorting',
        'tstamp' => 'tstamp',
        'crdate' => 'crdate',
        'cruser_id' => 'cruser_id',
        'title' => 'LLL:EXT:cms/locallang_tca.xml:tt_content',
        'delete' => 'deleted',
        'versioningWS' => 2,
        'versioning_followPages' => true,
        'origUid' => 't3_origuid',
        'type' => 'CType',
        'prependAtCopy' => 
'LLL:EXT:lang/locallang_general.xml:LGL.prependAtCopy',
        'copyAfterDuplFields' => 'colPos,sys_language_uid',
        'useColumnsForDefaultValues' => 'colPos,sys_language_uid',
        'shadowColumnsForNewPlaceholders' => 'colPos',
        'transOrigPointerField' => 'l18n_parent',
        'transOrigDiffSourceField' => 'l18n_diffsource',
        'languageField' => 'sys_language_uid',
        'enablecolumns' => array (
            'disabled' => 'hidden',
            'starttime' => 'starttime',
            'endtime' => 'endtime',
            'fe_group' => 'fe_group',
        ),
> Jetzt funktioniert es endlich :)

Gruß,
Marko
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>



More information about the TYPO3-german mailing list