我将 Symfony2 与教义一起使用,除了一个多对一/一对多的自引用关系外,其他关系没有问题。
我有一个实体客户,它可以有零个、一个或多个实体(也是客户)。当我使用 'doctrine:generate:entities BundleName' 生成实体时,我的 Entity Customer.php 中只有一个 var '$entities' 并且没有 var '$mother_house'。此外,生成的迁移(使用教义:迁移:差异)不包含创建新字段“mother_house_id”。
Customer.orm.yml 中的模式是这样的:
Acme\Bundle\CustomerBundle\Entity\Customer:
type: entity
table: customer
repositoryClass: Acme\Bundle\CustomerBundle\Entity\CustomerRepository
fields:
id:
type: integer
id: true
generator:
strategy: AUTO
company_name:
type: string
length: 255
reference:
type: string
length: '20'
created_at:
type: datetime
oneToMany:
entities:
targetEntity: Customer
mappedBy: mother_house
manyToOne:
mother_house:
targetEntity: Customer
inversedBy: entities
joinColumn:
mother_house_id:
referencedColumnName: id
manyToOne:
created_by:
targetEntity: Acme\Bundle\UserBundle\Entity\User
joinColumn:
created_by:
referencedColumnName: id
lifecycleCallbacks: { }