[TYPO3-dev] edit and use all tables in backend forms with TCA

Franz Holzinger franz at fholzinger.com
Mon Jan 23 09:17:54 CET 2006


Hello,

I have finished the main parts of this work now for mm tables with the
help of XCLASS classes. Sponsors can get the code.

I want to incorporate this in a more advanced manner for TYPO3 5.0. This
will probably lead to incompatibility because a lot of methods in the
CORE classes will get a change in parameters.


So what I want to have:
Every table should be usable in the backend with TCE forms.
Each table must only have keys, but these need not be unique.

key1
key2
.
.
.
keyn


So this should be displayed and editable like this is possible with the
TYPO3 tables with pid and uid fields now.


What has to be done to make this possible:

Replace the 'pid' and 'id' in all methods of TYPO3 to use 'key1' ... '
keyn' instead --> $idArray instead of $id with the table key->value as
array elements.

The rows will not be unique then like they are now. So a title text
should be displayed in a select box to switch between the different
records. E.g. in a mm table you will have several lines for a uid_local.
Then the text of the foreign table for uid_foreign should be displayed
in the select box.
If a table does not contain a pid, then there should be a TypoScript
settings somewhere to define a set of common pids for a pattern matching
this table. E.g. use GlobalPID1 = 23 and GlobalPID1Tables =
ext_products*,ext_address*,ext_fe_users or a regular expression here.
The ext_ tables are meant to be new tables without the pid column.

The mm table TCA needs to be configurable to use other fields than
'uid_local' and 'uid_foreign' as local and foreign field. And all the
key fiels of the other possible tables must come into TCA. More than one
foreign table should become possible.


The drawback will be that a lot of functions will have to be changed.
1. The pid might be missing with a table.
2. The uid, uid_local and uid_foreign columns might be missing. 'key1',
'key2' ... 'keyn' will have to be used instead.
3. The others columns like 'deleted' etc. might also be missing.

The misssing columns would not be recommended, however this should be
made possible to really be able to use any database table. The tables
can be marked as not TYPO3 compliant. E.g. you have already now the mm
tables in TYPO3 where you do not want to have the pid field and the uid
field.

The advantage:
This would make it possible to use any table with TCE without any
modifications on the table. Only entries in new TCA fields will be
necessary.


So do you think this feature should be implemented?


Regards,

Franz









More information about the TYPO3-dev mailing list