在symfony2中组织捆绑包的最佳和正确方法

在symfony2中组织捆绑包的最佳和正确方法,symfony,Symfony,我有点困惑我应该如何在symfony2中组织捆绑包。在我的应用程序中,我需要3个页面: 1-插入 2-名单 3-更新 哪一种可能是组织代码的正确且最好的方法 src/cp/AddPageBundle src/cp/EditPageBundle src/cp/UpdatePageBundle 或 在一个包中写入3个不同的控制器,每个控制器在不同的文件中 或 在一个捆绑包中,在一个控制器文件中写入3个不同的操作 我真的很困惑 提前谢谢 在一个捆绑包中,在一个控制器中执行3个不同的操作。不需要在捆绑包

我有点困惑我应该如何在symfony2中组织捆绑包。在我的应用程序中,我需要3个页面:

1-插入 2-名单 3-更新

哪一种可能是组织代码的正确且最好的方法

src/cp/AddPageBundle src/cp/EditPageBundle src/cp/UpdatePageBundle

在一个包中写入3个不同的控制器,每个控制器在不同的文件中

在一个捆绑包中,在一个控制器文件中写入3个不同的操作

我真的很困惑


提前谢谢

在一个捆绑包中,在一个控制器中执行3个不同的操作。不需要在捆绑包或控制器之间拆分此功能

例如,您可以使用UserController(insertAction、ListAction、UpdateAction)编辑/列出/更新用户以处理该用户,例如,为编辑/列出/更新注释添加另一个控制器(CommentsController)。同样的情况也可用于页面示例(添加/编辑/更新)


可选的方法是在控制器文件夹中创建文件夹,这样我们就有了更多有组织的代码。例如,为控制器创建管理员文件夹:Admin/ConsoleController、Admin/CategoryController、Admin/pluginControl以处理管理员功能。

在一个捆绑包中,在一个控制器中有3个不同的操作。不需要在捆绑包或控制器之间拆分此功能

例如,您可以使用UserController(insertAction、ListAction、UpdateAction)编辑/列出/更新用户以处理该用户,例如,为编辑/列出/更新注释添加另一个控制器(CommentsController)。同样的情况也可用于页面示例(添加/编辑/更新)


可选的方法是在控制器文件夹中创建文件夹,这样我们就有了更多有组织的代码。例如,为控制器创建管理员文件夹:Admin/ConsoleController、Admin/CategoryController、Admin/PluginController以处理管理员功能。

我完全同意TroodoN Mike的观点。您还应该使用页面实体和字段(发布日期、标题、内容等)创建PageBundle,并执行

app/console generate doctrine:crud PageBundle:Page

Symfony将生成一个基本CRUD,但通过插入/列表/更新,我完全同意TroodoN Mike的观点。您还应该使用页面实体和字段(发布日期、标题、内容等)创建PageBundle,并执行

app/console generate doctrine:crud PageBundle:Page

Symfony将生成一个基本的CRUD,但是使用insert/list/update

刚刚尝试了这个命令-命令是:

app/console原则:generate:crud——实体PageBundle:Page

这将在命令行上启动一个向导,该向导将提示您输入所需的任何其他参数


不幸的是,只有当主键字段名为id并且具有
getID()
方法时,它才起作用。

刚刚尝试过这个-命令是:

app/console原则:generate:crud——实体PageBundle:Page

这将在命令行上启动一个向导,该向导将提示您输入所需的任何其他参数


不幸的是,只有当主键字段名为id并且有一个
getID()
方法时,它才起作用。

嘿,非常感谢!作为补充,您是使用app/config/routing.yml中的路由,还是每个路由都应该放在每个包中?我会在每个包中使用单独的路由。这样捆绑包就可以独立工作(是隔离的),并且可以在不丢失路由的情况下传递给其他应用程序。嘿,非常感谢!作为补充,您是使用app/config/routing.yml中的路由,还是每个路由都应该放在每个包中?我会在每个包中使用单独的路由。这样,bundle就可以独立工作(是隔离的),并且可以在不丢失路由的情况下传递给其他应用程序。