我有点困惑,我应该如何组织symfony2中的包。在我的应用程序,我需要3页:最好和正确的方式来组织symfony2中的包
1-插入 2-名单 3-更新
哪一个可能是正确的,并组织我的代码最好的方法?
SRC/CP/AddPageBundle SRC/CP/EditPageBundle SRC/CP/UpdatePageBundle
OR
在一个束写入3个不同的控制器,每一个在不同的文件?
OR
在一个束,写在一个控制器文件3个不同的动作?
我真的很困惑这一点。
在此先感谢!
我有点困惑,我应该如何组织symfony2中的包。在我的应用程序,我需要3页:最好和正确的方式来组织symfony2中的包
1-插入 2-名单 3-更新
哪一个可能是正确的,并组织我的代码最好的方法?
SRC/CP/AddPageBundle SRC/CP/EditPageBundle SRC/CP/UpdatePageBundle
OR
在一个束写入3个不同的控制器,每一个在不同的文件?
OR
在一个束,写在一个控制器文件3个不同的动作?
我真的很困惑这一点。
在此先感谢!
在一个包中,一个控制器中有3个不同的动作。无需在捆绑软件或控制器上分割此功能。
例如,您可以编辑/列出/更新具有UserController(insertAction,ListAction,UpdateAction)的用户以处理用户,并且例如为编辑/列表/更新评论添加另一个控制器(CommentsController)。同样的情况可以用于你的页面示例(添加/编辑/更新)
可选的方法是在控制器文件夹内创建文件夹,以便我们拥有更多有组织的代码。例如,为控制器创建Admin文件夹:Admin/ConsoleController,Admin/CategoryController,Admin/PluginController来处理管理功能。
我完全同意TroodoN-Mike。你还应该创建PageBundle您的网页实体和你的领域(出版日期,标题,内容ECT),并执行
app/console generate doctrine:crud PageBundle:Page
Symfony的生成基本CRUD,但您的插入/列表/更新
刚试过这 - 命令是:
app/console doctrine:generate:crud --entity PageBundle:Page
这将启动命令行,将提示你需要的任何其他参数上的向导。
不幸的是,只有当您的主键字段被称为ID并具有getID()
方法时才有效。
嘿,非常感谢!为了补充,你是否使用了app/config/routing.yml中的路由,或者每个路由应该放在每个bundle中? – rpa
我会在每个包中使用单独的路由。这种方式捆绑自己工作(是孤立的),可以传递给其他应用程序而不会丢失路由。 –