我在 Zend Framework 2 中使用Doctrine Module for ORM 功能。我正在尝试构建一个基于 Zend Skeleton Application 的模块化架构,它可以覆盖和扩展模块 B 中模块 A 的功能。我还必须扩展实体只需通过新模块中的插件即可。
现在我的问题是实体的 xml 模式在模块 A 中是非常静态的。不可能用模块 B 覆盖它。我想实现一个服务,告诉学说模块在哪里可以找到用于特定的 xml 模式实体,但这还不够。
例如,当模块 B 扩展模块 A 但模块 C 也扩展模块 A - 使用哪个 xml 模式 - 来自模块 B 或来自模块 C ?所以我想从两个或多个模式文件中动态构建 xml 模式——一个在模块 B 中,一个在模块 C 中。
实现这种架构的最佳方式是什么?编写可以从所有模块调用以收集所有 xml 模式文件的服务是否是一种好方法?如何告诉 Doctrine 合并这些文件?有没有比接触 Doctrine Module 更好的方法——例如在配置文件中?