a2lix_translation_form языковой стандарт по умолчанию, переопределяемый stof_doctrine_extensions?

Я использую вкладки a2lix_translation_form в моей форме. Он имеет функцию, позволяющую редактировать несколько переводов для одного свойства в одной форме. Я настроил это так:

a2lix_translation_form:
    locales: [sk, en, de]       # [1]
    default_required: false ... # further as default

В форме у меня есть следующие 3 вкладки, где я могу редактировать одно свойство (Описание)

| SK [по умолчанию] | En | DE |

Он работал нормально (сохранял вещи в базе данных и т. Д.), Пока я не включил перевод в stof_doctrine_extensions. Вот конфиг:

stof_doctrine_extensions:
default_locale: sk
orm:
    default:
        translatable: true # not needed: listeners are not enabled by default

Я также использую jms_i18n_routing:

jms_i18n_routing:
    default_locale: sk
    locales: [sk, de, en]
    strategy: prefix_except_default

Когда я иду

локальный /app_dev.php/ продукт /1/ редактировать

тогда все выглядит хорошо, но когда я получаю доступ

localhost / en /app_dev.php/ en / company / 11 / edit

Sk [По умолчанию] содержит описание En.

Когда я устанавливаю перевод в stof_doctrine_extensions в false, форма отображается правильно. Но мне нужно, чтобы он был включен, потому что он мне нужен для других компонентов. Что я могу сделать?

1 ответ

Решение

Вы в конкретном случае, что я не советую впредь. У вас будут некоторые трудности с базой данных, если вы в будущем измените локаль по умолчанию.

Я обновил документ (у меня еще есть работа...), см. Конец http://a2lix.fr/bundles/translation-form/. Вы можете использовать аннотацию, как объяснено в документе, или добавить в начале ваши методы редактирования / создания:

   $translatableListener = $this->get('stof_doctrine_extensions.listener.translatable');
   $translatableListener->setTranslatableLocale($translatableListener->getDefaultLocale());
Другие вопросы по тегам