Symfony 3 关系 OneToMany 与联合 table 错误 genarate:enities

Symfony 3 ralation OneToMany with joint table error on genarate:enities

我有以下代码(用于 2 个表的广告和城市): 当我 运行 cmd 'php bin/console doctrine:generate:entities MyBundle' 生成 setter 和 geters (Symfony3) 出现此错误:

[Semantical Error] The annotation "@JoinColumn" in property Ligo\PlatformBundle\Entity\Advert::$cities was never imported. Did you maybe forget to add a "use" statement for this annotation? 500 Internal Server Error - AnnotationException


<?php

namespace Ligo\PlatformBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;

/**
 * Advert
 *
 * @ORM\Table(name="advert")
 * @ORM\Entity(repositoryClass="Ligo\PlatformBundle\Repository\AdvertRepository")
 */
class Advert
{
     /**
     * @ORM\ManyToMany(targetEntity="City")
     * @ORM\JoinTable(name="adverts_cities",
     *      joinColumns={@JoinColumn(name="advert_id", referencedColumnName="id")},
     *      inverseJoinColumns={@JoinColumn(name="city_id", referencedColumnName="id", unique=true)}
     *      )
     */
    private $cities;

您需要在 JoinColumn 注释前加上 ORM (@ORM\JoinColumn) 因为您没有专门导入它。