外键不在symfony2中生成

时间:2015-01-19 13:08:01

标签: php symfony orm associations symfony-forms

我遇到了一个简单的问题。我有医生,城市和区域实体。 医生表参考城市和区域表

在医生表中

生成了外键city_id但是没有创建area_id。请帮助我克服这种情况

关系如下:

area.orm.yml

id:
    id:
        type: integer
        id: true
        generator:
            strategy: AUTO
fields:
    area:
        type: string
        length: '100'
    cityId:
        type: integer
        column: city_id
oneToMany:
    doctors:
        targetEntity: Doctor
        mappedBy: area        
manyToOne:
    city:
        targetEntity: City
        inversedBy: areas
        joinColumn:
            name: city_id
            referencedColumnName: id

city.orm.yml

id:
    id:
        type: integer
        id: true
        generator:
            strategy: AUTO
fields:
    name:
        type: string
        length: '100'
oneToMany:
    doctors:
        targetEntity: Doctor
        mappedBy: city
oneToMany:
    areas:
        targetEntity: Area
        mappedBy: city 

Doctor.orm.yml

id:
    id:
        type: integer
        id: true
        generator:
            strategy: AUTO
fields:
    name:
        type: string
        length: '30'
    degree:
        type: string
        length: '30'
    gender:
        type: boolean
        length: '1'  
    speciality:
        type: string
        length: '100'
    yearofexp:
        type: integer
        length: '2'
    accomplishment:
        type: text    
        length: '300'
    review:
        type: text
        length: '200'
    contact: 
        type: integer
        length: '11'
    address:
        type: text
        length: '300'
manyToOne:        
    city:
        targetEntity: City
        inversedBy: doctors
        joinColumn:
            name: city_id
            referencedColumnName: id   
manyToOne:
    area:
        targetEntity: Area
        inversedBy: doctors
        joinColumn:
            name: area_id
            referencedColumnName: id

1 个答案:

答案 0 :(得分:1)

在ORM文件中删除manyToOne的多个声明。它应该解决这个问题。