Почему TYPO3 Extension Builder не создает внешние ключи?TYPO3 Extension Builder Внешний ключ
Я установил некоторые отношения между моделями, но в SQL Code есть noe FKs только colums для значения ключа.
Кто-нибудь может мне помочь?
Почему TYPO3 Extension Builder не создает внешние ключи?TYPO3 Extension Builder Внешний ключ
Я установил некоторые отношения между моделями, но в SQL Code есть noe FKs только colums для значения ключа.
Кто-нибудь может мне помочь?
Cite из Kartsen Dambekalns
Это полубессознательное дизайнерское решение. Просто найдите дату, когда ограничения внешнего ключа, которые представлены в MySQL, и сравниваются с тем, когда TYPO3 был «рожден».
Конечно, было бы здорово добавить такие ссылки, особенно с MySQL всегда может справиться с themm, даже если базовый механизм хранения не обрабатывает их (в случае которых они будут просто игнорироваться).
(source)
Ничего не изменилось до сих пор, так что вам нужно создать внешние ключи самостоятельно после моделирования.
Ответ на комментарий:
, как вы справлялись отношения между двумя таблицами? например, у меня есть таблица люди, которая относится к таблице дому с колонками housenr
Это зависит от соотношения типа курса (1:n
, n:1
, m:n
и т.д.) и Builder поддерживает создание отношений в моделировании инструмента отлично , Имейте в виду, что внешние ключи НЕ требуются для поддержания отношений в TYPO3.
Существует несколько правил, описанных в разделе документации TCA, то есть в указанном случае вы можете использовать тип поля select
или group (with internal_type)
. Для отношения «многие ко многим» вам также понадобится создать таблицу MM. Если вы будете следовать этим документам, вы можете быть уверены, что в общей форме редактирования бэкэнда они будут обработаны должным образом.
Как упоминалось ранее Extension Builder поддерживает создание различных типов отношений в клик-клик инструмент моделирования и это достойно, чтобы провести некоторое время, чтобы играть с ним, чтобы увидеть, как отношения различных типов обрабатываются в TYPO3. Он использует те же правила, которые используются при создании отношений, также в расширениях pre-extbase. Более того, Builder добавляет требуемые методы к моделям, то есть для getting
, attaching
и detaching
объектов MM данного поля отношений, поэтому наиболее важно моделировать все ваши отношения при запуске. В другом случае вам нужно будет написать эти методы вручную (что является скучным процессом)
спасибо, ладно, тогда я сделаю это вручную, могу ли я сделать это в ext_tables.sql ist, что хорошо? – Felix
TBH Я никогда не добавлял внешние ключи в TYPO3, поэтому не хочу об этом говорить. Я надеюсь, что вы поделитесь своим опытом, когда вы это сделаете. – biesior
как вы справлялись с отношениями между таблицами? Например, у меня есть стол, который относится к столовому дому с колонкой housenr , а позже я wanne рендерингую все дома со своими родственниками? – Felix