2015-08-12 4 views
0

Я использую TYPO3 7.4.0, и я учусь наращивать расширения в extbase & жидкости. У меня есть префикс поставщика в именах моих таблиц. Я создаю три таблицы для своих расширений. Когда я перехожу в бэкэнд и добавляю сущности в виде списка в папке ресурса, которую я создал, он работает без проблем. Когда я перехожу к Frontend для просмотра действия индекса моего объекта, он ищет таблицу без префикса поставщика в своем имени. Кто-нибудь знает, что это значит? Я создаю таблицы в «ext_tables.sql». У меня нет определенного отображения таблицы. Я не знаю, где изменить те таблицы, которые ищет extbase.Extbase ищет неправильную таблицу

ответ

1

По умолчанию Extbase ищет таблицу с помощью схемы tx_extkey_domain_model_modelname, поэтому для Animal модели в zoo внутр будет tx_zoo_domain_model_animal. (extkey без подчеркивания, если таковые имеются!)

Если вы использовали другую схему (например, имя поставщика в имени таблицы), вам нужно использовать сопоставление. То есть создать файл ext_typoscript_setup.txt в основной папке внутр и использовать этот:

config.tx_extbase{ 
    persistence{ 
     classes{ 
      Vendor\Zoo\Domain\Model\Animal { 
       mapping { 
        tableName = tx_your_own_name 
       } 
      } 

     } 
    } 
} 

BTW: это лучшая идея, чтобы сохранить оригинальную схему именования. Другое дело, что создание расширений вручную может быть сложным - по крайней мере для новичков, установите Extension Builder ext, чтобы быстро запускать новые расширения с помощью щелчка.

+0

благодарит за ответ. Теперь я попытаюсь добавить отображение и посмотреть, будет ли оно работать. Я не хочу, чтобы extension_builder работал над 7.4.0 – caevv

+0

Он по-прежнему ищет имя таблицы без префикса поставщика, даже если мой файл находится на странице. – caevv

+0

В порядке я получил его для работы, переименовав мои .php скрипты внутри/Конфигурация/TCA /. Я удалил префикс поставщика там и внутри операторов CREATE TABLE в моем ext_tables.sql. – caevv

Смежные вопросы