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());