Doctrine orm 一通/多通模式例外

Doctrine orm 一通/多通模式例外,doctrine-orm,symfony,Doctrine Orm,Symfony,我尝试为我的Symfony2应用程序与Doctrine2建立多人关系。我得到这个错误,我不知道为什么: app/console doctrine:schema:create PHP Deprecated: Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0 ATTENTION: This operation should not b

我尝试为我的Symfony2应用程序与Doctrine2建立多人关系。我得到这个错误,我不知道为什么:

app/console doctrine:schema:create
PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf.d/mcrypt.ini on line 1 in Unknown on line 0
ATTENTION: This operation should not be executed in an production enviroment.


  [Doctrine\DBAL\Schema\SchemaException]
  There is no column with name 'activityGroup' on table 'activity'.  
这是两类:

我认为活动课上实际上有活动小组。。。那么这个错误试图说明什么呢

谢谢

我明白了

uniqueconstraints期望实际的db字段名是
activityGroup\u id
,而不仅仅是
activityGroup

通过提供JoinColumn,可以确保在DB中调用了什么字段

因此,明智的解决方案是:

    /**
     * @ORM\Entity
     * @ORM\Table(name="activity",
     *     uniqueConstraints={
     *         @ORM\UniqueConstraint(name="name_idx", columns={"activity_group_id", "name"}),
     *         @ORM\UniqueConstraint(name="sort_idx", columns={"activity_group_id", "sort_id"})
     *     }
     * )
     */
    class Activity
    {
        // ...

        /**
         * @ORM\ManyToOne(targetEntity="SeduceMe\SiteBundle\Entity\ActivityGroup", inversedBy="activities")
         * @ORM\JoinColumn(name="activity_group_id", referencedColumnName="id")
         */

        protected $activityGroup;
        //...
    }