0

我有一个Entity复合键。见下文:

class BankAccount {

    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * 
     */
    protected $bank;

    /**
     * @ORM\Id
     * @ORM\ManyToOne(targetEntity="CompanyBundle\Entity\Company")
     */
    protected $company;

    ...

}

因为 Doctrine 在复合键方面存在一些问题,所以它不会生成序列(我在 PostgreSQL 中工作),我该如何处理这个问题才能生成$bank哪个是 PK?

4

1 回答 1

1

如果听起来你不想要一个复合键,只需要一个主键$bank和一个外键$company。如果是这样的话,

class BankAccount {

    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $bank;

    /**
     * @ORM\ManyToOne(targetEntity="CompanyBundle\Entity\Company")
     */
    protected $company;

    ...

}

应该这样做。

于 2013-08-01T05:16:17.763 回答