php - Symyfony 3.4 - 如何将实体移动到其他数据库
问题描述
我正在运行一个Symfony 3.4
基于 Web 服务Doctrine
来管理和持久化不同的数据实体。
现在我正在尝试实现一种将旧的、废弃的用户帐户转移到另一个充当存档的数据库的方法。
关于 Symfony 文档,配置 Doctrine 来管理不同的数据库连接和实体管理器应该没有问题。
但是我不完全理解如何设置这个用例的过程:
- 假设 Symfony 项目有不同的数据实体
DataEntity1
等DataEntity2
和不同的基础设施实体Infrastructure1
等。 - 如何告诉 Doctrine 仅使用数据实体初始化存档数据库?
- 如何在数据库之间移动实体?是否从实体管理器 1 加载它们并将它们保存在实体管理器 2 中的正确方式?
- 有没有关于如何做到这一点的最佳实践?
解决方案
如果我正确理解您的问题,您应该使用映射配置的前缀选项。
字首
此映射的所有实体共享的公共命名空间前缀。此前缀不应与其他已定义映射的前缀冲突,否则 Doctrine 无法找到您的某些实体。此选项默认为包命名空间 + 实体,例如,对于名为 AcmeHelloBundle 的应用程序包,前缀为 Acme\HelloBundle\Entity。
看看https://symfony.com/doc/3.4/reference/configuration/doctrine.html它应该可以帮助你。
要在两个数据库之间移动实体,您应该有两个实体管理器并使用正确的一个来保存较旧的帐户。
希望这可以帮助。
推荐阅读
- android - 在Pagedlist Android中加载更多页面时需要回调
- python - 使用 pyomo 并行解决许多实例
- amazon-web-services - 通过站点到站点 VPN 从本地连接到 AWS s3
- python - 如何从 python 脚本中的单个 bibtex 输入字段获取可读的 unicode 字符串
- gist - 在 Medium 上使用 Github Gists 嵌入代码不起作用
- javascript - document.querySelectorAll 检索所有必需的元素
- python - git bash 无法读取我的 python 文件已经尝试过类似问题下的方法
- javascript - 如何在 p5.js 中使用箭头键移动 Matter.js 主体?
- visual-studio - LocalDB 在 Visual Studio 中无响应
- python - 为什么 Python 不是这样随机的?