Symfony2 3-арные отношения - PullRequest
       25

Symfony2 3-арные отношения

0 голосов
/ 13 марта 2012

Использование файлов Symfony2 и orm.yml для сопоставления сущностей в базе данных, как я могу создать 3-х элементное отношение между сущностями A, B, C, в результате чего получится таблица D, содержащая A_PrimaryKey, B_PrimaryKey, C_PrimaryKey связь междусущности таковы:

А.Б.

1 Ответ

0 голосов
/ 13 марта 2012

Итак, ваша базовая модель будет выглядеть так:

A 1:n D
B 1:n D
C 1:n D

yml для A будет выглядеть так:

Acme\TestBundle\Entity\A:
    type: entity
    # ...
    oneToMany:
        products:
            targetEntity: D
            mappedBy: d

Вы можете просто повторить это с B и C.Для D это выглядит примерно так:

Acme\TestBundle\Entity\D:
    type: entity
    # ...
    manyToOne:
        a:
            targetEntity: A
            inversedBy: as
            joinColumn:
                name: a_id
                referencedColumnName: id
        b:
            targetEntity: B
            inversedBy: bs
            joinColumn:
                name: b_id
                referencedColumnName: id
        c:
            targetEntity: C
            inversedBy: cs
            joinColumn:
                name: c_id
                referencedColumnName: id

Попробуйте.Может быть, попробуйте сначала отобразить A и D.Если это работает, продолжайте с B. Таким образом, вы с большей вероятностью поймаете ошибки в пути!

...