What is the difference between inversedBy and mappedBy?(inversedBy 和mappedBy 有什么区别?)
问题描述
我正在使用 Zend Framework 2 和 Doctrine 2 开发我的应用程序.
I am developing my application using Zend Framework 2 and Doctrine 2.
在写注解时,我无法理解 mappedBy 和 inversedBy 之间的区别.
While writting annotations, I am unable to understand the difference between mappedBy and inversedBy.
我应该什么时候使用mappedBy?
我应该什么时候使用inversedBy?
我什么时候不应该使用?
When should I use neither?
这是一个例子:
/**
*
* @ORMOneToOne(targetEntity="custModEntityPerson", mappedBy="customer")
* @ORMJoinColumn(name="personID", referencedColumnName="id")
*/
protected $person;
/**
*
* @ORMOneToOne(targetEntity="AuthEntityUser")
* @ORMJoinColumn(name="userID", referencedColumnName="id")
*/
protected $user;
/**
*
* @ORMManyToOne (targetEntity="custModEntityCompany", inversedBy="customer")
* @ORMJoinColumn (name="companyID", referencedColumnName="id")
*/
protected $company;
我进行了快速搜索并找到了以下内容,但我仍然感到困惑:
I did a quick search and found the following, but I am still confused:
- 示例 1
- 示例 2一个>
- 示例 3
推荐答案
- mappedBy 必须在(双向)关联的反面指定
- inversedBy 必须在(双向)关联的拥有方指定
- mappedBy has to be specified on the inversed side of a (bidirectional) association
- inversedBy has to be specified on the owning side of a (bidirectional) association
- ManyToOne 始终是双向关联的拥有方.
- OneToMany 始终是双向关联的反面.
- OneToOne 关联的拥有方是包含外键的表的实体.
来自教义文档:
参见 https://www.doctrine-project.org/projects/doctrine-orm/en/latest/reference/unitofwork-associations.html
这篇关于inversedBy 和mappedBy 有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:inversedBy 和mappedBy 有什么区别?
基础教程推荐
- PHPUnit 的 Selenium 2 文档到底在哪里? 2022-01-01
- 使用 scandir() 在目录中查找文件夹 (PHP) 2022-01-01
- php中的PDF导出 2022-01-01
- 将变量从树枝传递给 js 2022-01-01
- Web 服务器如何处理请求? 2021-01-01
- 如何在数学上评估像“2-1"这样的字符串?产生“1"? 2022-01-01
- Yii2 - 在运行时设置邮件传输参数 2022-01-01
- 主题化 Drupal 7 的 Ubercart “/cart"页 2021-01-01
- php 7.4 在写入变量中的 Twig 问题 2022-01-01
- php中的foreach复选框POST 2021-01-01
