[TYPO3-german] Model erweitern
Eike Starkmann
starkmann at undkonsorten.com
Mon Jan 5 17:43:13 CET 2015
Hi Marc,
das ist mir schon klar.
Ich möchte zwei Sachen:
1. Ein bestehendes Model erweitern *ohne* einen neuen recordType einzuführen
2. Das TCA nach der neuen Methode erweitern.
(http://docs.typo3.org/typo3cms/TCAReference/ExtendingTca/Examples/Index.html)
*Mit* recordType und nach der alten Methode (ext_tables.php) geht das
schon ohne Probleme.
Bis denne, Eike
Am 05.01.2015 um 16:52 schrieb Marc Willmann:
> Hallo Eike,
>
> Wieso sollte das Frontend irgendwas von Deinen TCA-Erweiterungen
> mitkriegen? Was willst Du im Ergebnis eigentlich genau erreichen?
>
> Marc
>
>
> Am 05.01.15 16:48, schrieb Eike Starkmann:
>> Hallo,
>>
>> ich bin gerade über nen neuen Weg das TCA zu erweitern gestolpert:
>> http://docs.typo3.org/typo3cms/TCAReference/ExtendingTca/Examples/Index.html
>>
>> Ich habe das jetzt mal für eine Extension so umgebaut, allerdings stellt
>> sich mir die Frage, wie das Frontend von diesen Änderungen wissen soll?
>> Es gibt ja keine Setter und Getter für die neuen Attribute im Model.
>>
>> Also muss noch eine Erweiterung des Model her, aber dann brauche ich
>> doch wieder einen eigenen Typen, damit das Mapping funktioniert, etwa so:
>>
>> ext_tables.php:
>>
>> if
>> (!isset($GLOBALS['TCA']['tx_eventmgmt_domain_model_event']['ctrl']['type']))
>> {
>> if
>> (file_exists($GLOBALS['TCA']['tx_eventmgmt_domain_model_event']['ctrl']['dynamicConfigFile']))
>> {
>>
>> require_once($GLOBALS['TCA']['tx_eventmgmt_domain_model_event']['ctrl']['dynamicConfigFile']);
>> }
>> // no type field defined, so we define it here. This will only happen
>> the first time the extension is installed!!
>> $GLOBALS['TCA']['tx_eventmgmt_domain_model_event']['ctrl']['type'] =
>> 'tx_extbase_type';
>> $tempColumns = array();
>> $tempColumns[$GLOBALS['TCA']['tx_eventmgmt_domain_model_event']['ctrl']['type']] = array(
>> 'exclude' => 1,
>> 'label' =>
>> 'LLL:EXT:extend_eventmgmt/Resources/Private/Language/locallang_db.xlf:tx_extendeventmgmt.tx_extbase_type',
>> 'config' => array(
>> 'type' => 'select',
>> 'default' => 'Tx_ExtendEventmgmt_Event',
>> 'items' => array(),
>> 'size' => 1,
>> 'maxitems' => 1,
>> )
>> );
>> \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('tx_eventmgmt_domain_model_event', $tempColumns, 1);
>> }
>>
>> ext_typoscritp_setup:
>>
>> config.tx_extbase{
>> persistence{
>> classes{
>> Undkonsorten\Eventmgmt\Domain\Model\Event {
>> subclasses {
>> Tx_ExtendEventmgmt_Event =
>> Undkonsorten\ExtendEventmgmt\Domain\Model\Event
>> }
>> }
>> Undkonsorten\ExtendEventmgmt\Domain\Model\Event {
>> mapping {
>> tableName = tx_eventmgmt_domain_model_event
>> recordType = Tx_ExtendEventmgmt_Event
>> }
>> }
>> }
>> }
>> }
>>
>> Dies funktioniert allerdings mit der neuen Methode nicht.
>>
>> 1.) Gibts da ähnliche Erfahrungen?
>> 2.) Braucht man eigentlich unbedingt einen neuen Typen für das mapping?
>>
>> Bis denne, Eike
>>
>>
>>
>>
>> _______________________________________________
>> 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