3

我认为 Symfony2 缺少ViewModel的概念(如 ASP.NET MVC 框架),即与视图关联的模型。Symfony2(作为文档)通常将一个数组分配给一个视图。

视图模型可能是一个 PHP 类,但它与表单模型不同,有时它与域实体相同。在处理要显示的大量信息时,它有时很有用。

无论如何,关于视图模型在 Symfony2 中的位置是否有任何约定?有具体的文件夹吗?现在我有:

Symfony2/src/MyCompany/MyBundle/Form/Model

它保存与表单关联的模型。和:

Symfony2/src/MyCompany/MyBundle/Entity

对于域实体(绑定到数据库表)。

非常感谢您的建议。怎么样Symfony2/src/MyCompany/MyBundle/Model

4

2 回答 2

0

在 Symfony2 中,没有 ViewModel 这样的概念。您直接传入模板实体或模型。不过,您可以构建自己的 ViewModel。

实体不是模型。正如您所说,它们是原则管理对象或域实体。如果您想拥有业务模型,请将它们放在 MyBundle/Model 中,就像许多其他捆绑包一样(例如,FOSUserBundle)。

于 2012-05-17T13:16:40.190 回答
0

ViewModel只要你的命名空间反映了它的位置,你把你的……放在哪里并不重要。

我会将其放入src/MyCompany/MyBundle/View/Model,然后您的命名空间将是MyCompany\MyBundle\View\Model.

于 2012-05-17T12:40:55.167 回答