簡體   English   中英

Doctrine MappedSuperclass和唯一約束

[英]Doctrine MappedSuperclass and unique constraints

我有一個場景,我需要使用Doctrine的MappedSuperclass功能(使用Symfony2),並在一些超類列上創建一個唯一約束。 讓我們說:

use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\MappedSuperclass
 */
class Base
{
    /**
     * @ORM\Column(type="integer", nullable=false)
     */
    private $someColumn;
}

/**
 * @ORM\Entity
 * @ORM\Table(uniqueConstraints={@ORM\UniqueConstraint(name="column_idx", columns={"someColumn"})})
 */
class Concrete extends Base
{
}

問題是在模式生成期間處理@ORM \\ Table注釋:

[Doctrine\DBAL\Schema\SchemaException]                          
There is no column with name 'someColumn' on table 'Concrete'.

有沒有辦法定義映射超類的唯一約束?

由於答案作者沒有自己發布答案,讓我引用他的話:

嘗試對實體字段使用protected而不是private。 您應該始終對實體字段使用protected或public

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM