6

假设我的 Symfony2 包中有两个实体,User并且Group. 由多对多关系关联。

    ┌────────────────┐         ┌────────────────┐         ┌────────────────┐
    |      USER      |         | USER_GROUP_REL |         |     GROUP      |
    ├────────────────┤         ├────────────────┤         ├────────────────┤
    | id#            ├---------┤ user_id#       |    ┌----┤ id#            |
    | username       |         | group_id#      ├----┘    | groupname      |
    | email          |         | created_date   |         |                |
    └────────────────┘         └────────────────┘         └────────────────┘

将其他列添加到连接表中的好做法或好方法是什么,例如表示连接日期的创建User日期Group

我知道我可以用QueryBuilder来写一个INSERT声明。

但就我而言,我还没有看到任何 INSERTQueryBuilder 或本机 SQL 的例子,这让我相信 ORM/Doctrine 试图避免直接的 INSERT 语句(例如,出于安全原因)。另外,就我对 Symfony 和 Doctrine 的理解而言,如果框架没有涵盖这样一个常见的需求,我会感到吃惊。

4

1 回答 1

2

You want to set a property of the relation. This is how it's done in doctrine: doctrine 2 many to many (Products - Categories)

I answered that question with a use case (like yours).

This is an additional question / answer which considers the benefits and use cases: Doctrine 2 : Best way to manage many-to-many associations

于 2013-08-10T09:57:48.853 回答