I have a problem trying to persist a new entity with Symfony 2.7.11 that have a related Entity.
I need to create a Landing that can have many universities so I created 3 tables
landing
- landingId (primary Key)
university
- universityId (primary Key)
landingUniversity
- landingId (both are primary Key) (foreign Key Landing)
- universityId (foreign Key University)
And I have just 2 Entities (Landing & University) and a Many To Many relation (unidirectional, because I just want to know the universities added to a landing, so University hasn't got anything about landing)
First, I find each University on my database and I save them. Then I create the new Landing and I add all of them.
$universityRepository = $this->em->getRepository('University'); $universities = array(); foreach ($listUniversities as $universityId){ $university= $cursosRepository->findById($universityId); $universities[] = $university[0]; } $newLanding = new Landing(); $newLanding->setName($landing["name"]); foreach ($universities as $university){ $newLanding->addUniversity($university); } $em = $this->getEntityManager(); $em->persist($newLanding); $em->flush(); And I'm getting this error when symfony executes flush():
Could not resolve type of column "landingId" of class University
What I'm doing wrong?
My Entity:
/** * Landing * * @ORM\Table() * @ORM\Entity(repositoryClass="LandingRepository") */ class Landing { /** * @var integer * * @ORM\Column(name="landingid", type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @var string * * @ORM\Column(name="name", type="string", length=250) */ private $name; /** * @var integer * * @ORM\ManyToOne(targetEntity="Language") * @ORM\JoinColumn(name="languageId", referencedColumnName="languageId") */ private $languageId; /** * @ORM\ManyToMany(targetEntity="University") * @ORM\JoinTable(name="landingUniversity", * joinColumns={@ORM\JoinColumn(name="landingId", referencedColumnName="landingId")}, * inverseJoinColumns={@ORM\JoinColumn(name="unversityId", referencedColumnName="unversityId")} * ) */ private $universities; Thank you so much!!!