class ImageGallery
{
...
/**
* @ORM\ManyToOne(targetEntity="App\Entity\MediaObject", inversedBy="imageGalleries")
* @ORM\JoinColumn(nullable=false)
*/
private $image;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Gallery", inversedBy="imageGalleries")
* @ORM\JoinColumn(nullable=false)
*/
private $gallery;
/**
* @Gedmo\SortablePosition
* @ORM\Column(type="integer")
*/
private $position;
...
class Gallery
{
...
/**
* @ Gedmo\SortableGroup
* @ORM\OneToMany(targetEntity="App\Entity\ImageGallery", mappedBy="gallery", fetch="EXTRA_LAZY")
*/
private $imageGalleries;
...
class MediaObject
{
...
/**
* @var string
*
* @ORM\Column(type="string", length=255, nullable=true)
* @Groups("media")
*/
private $filename;
/**
* @ORM\OneToMany(targetEntity="App\Entity\ImageGallery", mappedBy="image")
*/
private $imageGalleries;
...
easy_admin_config :
App\Entity\Gallery
form:
fields:
- property: 'imageGalleries'
type: 'easyadmin_autocomplete'
Так что, конечно, не автозаполнение, потому что таблица "ImageGallery" пуста, как извлечь записи из MediaObject?
У меня есть решение, но я не думаю, что это лучше всего, я думаю, чтобы добавить отношения многие ко многим непосредственно на изображении
class Gallery
{
...
/**
* @ORM\ManyToMany(targetEntity="MediaObject", inversedBy="galleries", cascade={"persist", "remove"})
* @ ORM\JoinTable(name="images_galleries")
*
*/
private $images;
...
Я собираюсь в конечном итоге с 2 таблицами (images_galleries и gallery_mediaobject) ... тогда я бы сделал работу с Speci c контроллер "GalleryController", я думаю, что я могу обойтись, но, как я уже говорил, я не думаю, что это лучшее решение
есть ли решение уже разработано?