1

我从 ZF2 开始,我有一个包含多个模块的应用程序,这些模块被视为不同的“站点”。我想要一个处理所有数据访问的通用库。

理想情况下,我会在包含实体、映射器和服务的根目录中创建类似“common”的东西。

我已经这样做了,但我似乎无法让它自动加载模块上下文之外的新命名空间。

我试过使用:

    Zend\Loader\AutoloaderFactory::factory(array(
        'Zend\Loader\StandardAutoloader' => array(
            'autoregister_zf' => true,
            'namespaces' => array(
                'Common' => dirname(__DIR__) . '/site/common',
            )
        )
    ));

然后我创建了目录结构:

Common/Entity/User/User.php
Common/Mapper/User/User.php

但是当我尝试使用这些时,它找不到文件。

知道是否有推荐的或最佳实践这样做 - 或者如何完成我正在做的事情?

谢谢!

4

1 回答 1

3

最佳实践的建议是将所有内容都保留在一个模块中。Zf2 是模块化应用程序,数据访问等服务也应该是模块的一部分。我建议您也将这种“通用”结构创建为模块(下面是 ZF2 骨架模块的链接)。

https://github.com/zendframework/ZendSkeletonModule

在下面的链接中,您将找到一些有关如何准备模块并从中准备服务管理器以提供这些映射器和实体的有用信息。

http://framework.zend.com/manual/2.0/en/modules/zend.module-manager.intro.html

希望这可以帮助 :)

于 2013-03-22T08:02:34.597 回答