Symfony ArrayCollection dans form symfony

Viewed 14

I'm trying somehow to attach a partner's modules to my PartnerModule entity, but I can't because it has to create as many relationships as there are associated modules.

A partner has several modules and a module belongs to several partners.

Hence this intermediate table: PartnerModule. I understand that this is definitely a problem in my entities but I can't manage to fix it. Here are my entities and my form. I specify that when I put "multiple" => false it works well.

enter image description here

My error :

Expected argument of type "?App\Entity\Module", "Doctrine\Common\Collections\ArrayCollection" given at property path "modules".

Entity Module :

#[ORM\Entity(repositoryClass: ModuleRepository::class)]
class Module
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column]
    private ?int $id = null;

    #[ORM\Column(length: 250)]
    private ?string $nom = null;

    #[ORM\Column]
    private ?bool $statut = null;

    #[ORM\OneToMany(mappedBy: 'Modules', targetEntity: PartenaireModule::class)]
    private Collection $partenaireModules;

    public function __construct()
    {
        $this->partenaireModules = new ArrayCollection();
    }

Entity Partenaire Module

#[ORM\Entity(repositoryClass: PartenaireModuleRepository::class)]
class PartenaireModule
{
    #[ORM\Id]
    #[ORM\GeneratedValue]
    #[ORM\Column]
    private ?int $id = null;

    #[ORM\Column]
    private ?bool $is_active = true;

    #[ORM\ManyToOne(inversedBy: 'partenaireModules')]
    private ?Partenaire $Partenaires = null;

    #[ORM\ManyToOne(inversedBy: 'partenaireModules')]
    private ?Module $Modules = null;

This is how my data should be mapped: -> module_id, partenaire_id, is_active, id

Any help or clue to help me will be welcome :)

Thanks

0 Answers
Related