php – Zend Framework的模型和后端接口生成器

通过一些研究,经常报告的关于Zend Framework的一个缺点是开始工作所需的工作量.对我来说,如果ZF拥有像Symfony这样强大的模型和后端接口生成器,这可以解决.我一直在寻找那些,这是我发现的:

模型生成

> http://code.google.com/p/zend-db-model-generator/:看起来像官方的,根据用户的反馈,documentation似乎很糟糕.
> http://code.google.com/p/zend-model-generator/:看起来相当先进. 3个月前更新.
> https://github.com/inxilpro/Galahad-FE/:2年没有更新,看起来已经死了.
> https://github.com/codeinchaos/zend-model-generator/blob/master/generate.php:单个PHP文件,可以作为基础使用并根据需要进行扩展.

后端接口

像往常一样,可以使用数据库管理工具

> http://www.phpmyadmin.net:从3.5开始就有很多新功能.难以延伸.
> http://www.adminer.org/:单文件后端接口.相当完整.插件的使用似乎使扩展功能变得容易.

后端接口生成

> http://zfdatagrid.com/grid/default/site/crud来自看似非常活跃的ZF相关项目:http://code.google.com/p/zfdatagrid/.
> http://www.koala-framework.org/:我最近遇到过这个框架,它允许你围绕Zend创建“类似桌面”的应用程序,可以用来创建后端接口.

设置界面似乎很容易,例如,在这里您将如何显示一个表单来编辑与编辑成员相同的页面上的联系人:

<?PHP
class MemberContacts extends Kwf_Model_Db
{
    protected $_table = 'member_contacts';
    protected $_referenceMap = array(
        'Member' => array(
            'column'           => 'member_id','refModelClass'     => 'Members',)
    );
}
?>

A demo of Koala frameworks is available.说实话,它看起来非常令人印象深刻.

问:Zend使用哪种模型生成器和后端接口(生成器)?为什么?

我不使用任何类型的发电机,准备后台或所谓的脚手架.

为什么我不以一般方式使用它们?

这些工具对生成的UI的结构方式有很强的依赖性,您不再具备以您想要的方式设计它的能力.

它们很难重复使用,除非你非常了解它们,它们引入了很多魔法,例如当我使用Django创建一个后台时我要设置五个参数并且我已经运行了后台.理解它是如何工作的确需要很多关于工具内部机制的知识,因此更新它可能是一个真正的痛苦.

在我看来,提供几乎完整的后台应用程序(如Symfony,Rails和Django)以及Zend Framework的作用之间存在很大差异:限制于一般框架和库.

在开箱即用的东西和灵活的东西之间有一个慎重的选择.我认为他们倾向于针对不同的需求.

我倾向于选择Zend Framework方法,因为我不满意(也没有经验我承认)与其他人提供的“几乎完成”的UI.

为什么我不会在Zend Framework中使用它们?

如果Zend Framework没有使用这样的工具,我就不会插入别人试图在其上构建的工具,因为没有什么可以保证它不会有任何回归(并且升级可能是一个非常好的事情,因为Zend总是整合越来越多的外部服务). Zend Framework的强大之处在于它的灵活性,通过重叠工具,你违背了产品的理念.

它可能会满足您对真正小项目的期望,但对于更大的项目,我确实建议您根据自己的需要构建UI,后台只需要一两周的时间.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...