我尝试了几个Web开发框架,例如Zend Framework 1/2,Yii,Ruby on Rails,Django for Python,Spring + myBatis等等。其中大多数附带了代码生成器,可以减轻编写CRUD,表数据编辑和SQL迁移(等等)的负担。例如,Yii中的Gii,ROR上的迁移工具,myBatis的myBatis生成器,Django应用程序管理器等等。但我在ZF找不到相同的工具。
ZF2中的代码生成是否有用,下面是示例功能:
答案 0 :(得分:5)
对于ZF1,您可以使用Zodeken,它提供了完整的crud接口。因为zf2正在开发中。
答案 1 :(得分:3)
Zend Framework附带“Zend Framework Tool”
ZF2: http://framework.zend.com/manual/2.1/en/modules/zendtool.introduction.html
ZF 1.X: http://framework.zend.com/manual/1.12/en/zend.tool.framework.clitool.html
有了它,你可以初始化项目,添加控制器,模型,表格等。我只使用了ZF 1.X工具。它可以方便地设置初始目录布局。
答案 2 :(得分:3)
这比您想要的要低一些,但ZF2中有一个功能强大的软件包,用于代码反射,扫描和生成。在内部,我们使用Doctrine2对象管理器从Doctrine2模式生成完整的mvc堆栈。不幸的是,它不是非常模块化的,我无法直接与您分享来源。这是包裹:
http://framework.zend.com/apidoc/2.2/namespaces/Zend.Code.html
https://github.com/zendframework/Component_ZendCode
专业提示1:在你的生成器中使用Twig,而不是phtml进行模板化,因为使用phtml模板编写PHP非常困难......了解到的方法很难: - /
专业提示2:扫描程序非常适用于读取代码而无需实例化它。这对我们来说很方便,因为我们在生成器中使用了故障保护,它表示如果文件存在,它必须包含docblock注释@overwrite true
,否则它将不会更新该文件。因此,我们必须在输出之前扫描每个文件。反射不适用于视图脚本之类的东西,但扫描效果很好!
答案 3 :(得分:0)
对于zend.framework 1(ZF1)我已经做了一个crud(代码生成器) zend-crud 。试一试:http://magentoyan.com/zend-crud.html
答案 4 :(得分:-1)
这是我的朋友创建的一个工具,它是用java制作的,它非常直观,如果你有关于如何使用它的问题让我知道