在我的 Symfony2 项目中,我有一个 ModelBundle 来保存我的实体,以及用于前端、后端等的其他包,这些包使用了该 ModelBundle。
我有几个特定于模型的函数来执行一些特定于实体的任务。我把这些放在哪里?
- 我是否在我的实体文件夹旁边创建一个单独的“模型”文件夹,并将所有这些功能放在那里?
- 我是否在我的“ModelBundle”中创建一个将这些功能作为操作保存的控制器?这可能很奇怪,因为在我看来,控制器接受 HTTP 请求并返回 HTTP 响应,所以它不适用于这种情况。
- 我是否将它们放在实体类本身中?这好看吗?当我重新生成我的 ORM 时,它们是否有可能被覆盖?
- 我在寻找自定义存储库吗?我可以制作这些并将它们放入“模型”文件夹或其他东西中。http://www.doctrine-project.org/docs/orm/2.0/en/reference/working-with-objects.html#custom-repositories
PS:我喜欢 Symfony2,但是当每个人都有一套明确的框架最佳实践时,我会很高兴 :-)