Можно ли добавить переводимую ассоциацию в Sonata Admin Bundle?

Можно ли добавить переводимую ассоциацию в Sonata Admin, используя функцию DoctrineBehaviors Transhable?

Я имею в виду, что-то вроде этого:

// InfoPageAdmin.php

->add('translations', 'a2lix_translations', [
'fields' => [
'title' => [
'field_type' => 'text'
],
'content' => [
'field_type' => 'ckeditor',
'config_name' => 'default'
],
'slideshow' => [
'field_type' => 'sonata_type_model_list'
]
]
])

Где «слайд-шоу» — переводимое поле, связанное с другим объектом:

// InfoPageTranslation.php

/**
* @ORM\ManyToOne(targetEntity="AppBundle\Entity\PictureCollection", cascade={"persist"}, fetch="EAGER")
* @ORM\JoinColumn(name="slideshow_id", referencedColumnName="id")
*/
protected $slideshow;

Я получил следующую ошибку:

ContextErrorException: Catchable Fatal Error: Аргумент 1 передан
Соната \ AdminBundle \ Form \ DataTransformer \ ModelToIdTransformer :: __ конструкт ()
должен реализовать интерфейс
Sonata \ AdminBundle \ Model \ ModelManagerInterface, задано нулевое значение, вызвано в
D: \ XAMPP \ htdocs \ mega \ app \ cache \ dev \ classes.php в строке 13492 и
определено в строке D: \ XAMPP \ htdocs \ mega \ app \ cache \ dev \ classes.php 12628

Я надеюсь, что мой вопрос ясен.

Спасибо!

2

Решение

Ну, я нашел простой способ решить проблему. Например, я хотел бы иметь разные галереи для каждого языка InfoPage. Итак, я могу достичь этого следующим образом:

# InfoPageAdmin.php
->add('translations', 'a2lix_translations', [
'fields' => [
'gallery' => [
'field_type' => 'entity',
'class' => 'AppBundle:Gallery',
],
],
])

Здесь, Галерея — это поле сущности InfoPage:

# AppBundle/Entity/InfoPage.php
/**
* @ORM\ManyToOne(targetEntity="AppBundle\Entity\Gallery", cascade={"persist"}, fetch="EAGER")
* @ORM\JoinColumn(name="gallery_id", referencedColumnName="id")
*/
protected $gallery;

Я надеюсь, что мой ответ поможет кому-то. 🙂

Изменить: Если вы хотите использовать «sonata_type_model_list» в переводах, рабочий способ описан здесь: https://github.com/a2lix/TranslationFormBundle/issues/155.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]