Показать сообщение отдельно
Старый 13.12.2012, 14:42   #2
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

1. Разделять таблицы на классы и защититься от путаницы при установке других систем в ту же базу (если поставить phpbb в эту же базу, то его таблицы будут например phpbb_**). И, кажется мне, что функции t3lib_db делают проверки на префиксы (в частности tx_, который зарезирвирован для таблиц пользовательских плагинов). В TSRef точно есть упоминание про такие проверки. Именно поэтому нельзя с помощью TS.CONTENT выбрать записи из be_users (недавно обсуждалось на форуме).

В общем для удобства.

2+3.
l18n - сокращение от английского варианта слова "интернализация".
t3ver - для версионности, воркспейсов.
cruser_id - id BE пользователя, который создал запись

И интернализация и вверсионность используют простое создание копий записи в то же таблице, но с другим содержанием. Эти дополнительные поля позволяют различить что это копии и привязать их к главной (родительской) записи.

Реализация поддержки интернализации в FE требует доработки кода плагинов.

На всякий случай: http://www.slideshare.net/kfish/i18n-in-typo3-flow

4. mm = many to many. Одна новость может указывать на несколько категорий, и одна категория может относиться к нескольким новостям. Без промежуточной таблицы этого не сделать. В TYPO3 их обычно называют *_mm

5. Ядро точно не заставите видеть две базы. Это легко понять если глянуть код t3lib_db
dmartynenko вне форума   Ответить с цитированием