ZF3 zend-mvc-骨骼国际化不起作用

2024-05-13

我正在尝试评估现在是否是开始迁移到 ZF3(或继续使用 ZF2 开发我的应用程序)的合适时机。因此,我安装了 mvc-sculpture 应用程序并完成了 MVC 教程(here https://docs.zendframework.com/tutorials/getting-started/overview/)在我到达国际化部分之前它一直工作得很好。

我安装了组件(即 zend-i18n 和 zend-mvc-i18n 组件),创建了翻译文件(即 en_US.mo 和 en_US.po)并将它们复制到我的module/Application/language/文件夹并在应用程序配置文件中添加配置。

// in a module's module.config.php:
'translator' => [
    'locale' => 'en_US',
    'translation_file_patterns' => [
        [
            'type'     => 'gettext',
            'base_dir' => __DIR__ . '/../language',
            'pattern'  => '%s.mo',
        ],
    ],
],

当然,在layout.phtml文件中添加了要翻译的文本

<p>&copy; 2016 by Examples Ltd. <?= $this->translate('All rights reserved') ?></p>

但是,由于某种原因它不起作用

Zend\ServiceManager\Exception\ServiceNotFoundException    

File:
my_install_path/zend-mvc-skeleton-application/vendor/zendframework/zend-servicemanager/src/AbstractPluginManager.php:133

Message:
A plugin by the name "translate" was not found in the plugin manager Zend\View\HelperPluginManager

Stack trace:
#0 /my-own-install-path/vendor/zendframework/zend-view/src/Renderer/PhpRenderer.php(373): Zend\ServiceManager\AbstractPluginManager->get('translate', NULL)
#1 /my-own-install-path/vendor/zendframework/zend-view/src/Renderer/PhpRenderer.php(391): Zend\View\Renderer\PhpRenderer->plugin('translate')
#2 /my-own-install-path/module/Application/view/application/index/index.phtml(1): Zend\View\Renderer\PhpRenderer->__call('translate', Array)
#3 /my-own-install-path/module/Application/view/application/index/index.phtml(1): Zend\View\Renderer\PhpRenderer->translate('Dr Job')
#4 /my-own-install-path/vendor/zendframework/zend-view/src/Renderer/PhpRenderer.php(502): include('/Applications/M...')
#5 /my-own-install-path/vendor/zendframework/zend-view/src/View.php(207): Zend\View\Renderer\PhpRenderer->render(Object(Zend\View\Model\ViewModel))
#6 /my-own-install-path/vendor/zendframework/zend-view/src/View.php(236): Zend\View\View->render(Object(Zend\View\Model\ViewModel))
#7 /my-own-install-path/vendor/zendframework/zend-view/src/View.php(200): Zend\View\View->renderChildren(Object(Zend\View\Model\ViewModel))
#8 /my-own-install-path/vendor/zendframework/zend-mvc/src/View/Http/DefaultRenderingStrategy.php(105): Zend\View\View->render(Object(Zend\View\Model\ViewModel))
#9 /my-own-install-path/vendor/zendframework/zend-eventmanager/src/EventManager.php(271): Zend\Mvc\View\Http\DefaultRenderingStrategy->render(Object(Zend\Mvc\MvcEvent))
#10 /my-own-install-path/vendor/zendframework/zend-eventmanager/src/EventManager.php(143): Zend\EventManager\EventManager->triggerListeners(Object(Zend\Mvc\MvcEvent))
#11 /my-own-install-path/vendor/zendframework/zend-mvc/src/Application.php(369): Zend\EventManager\EventManager->triggerEvent(Object(Zend\Mvc\MvcEvent))
#12 /my-own-install-path/vendor/zendframework/zend-mvc/src/Application.php(348): Zend\Mvc\Application->completeRequest(Object(Zend\Mvc\MvcEvent))
#13 /my-own-install-path/public/index.php(43): Zend\Mvc\Application->run()
#14 {main}

我的问题很简单。你成功了吗?或者你知道其中有什么问题吗?任何帮助将不胜感激。非常感谢。


我从 samsonasik 得到了“普通香草”解决方案here https://github.com/zendframework/tutorials/issues。解决方案是要求:

$ composer require zendframework/zend-mvc-i18n

然后注册为模块:

'modules' => [
     'Zend\I18n',
     'Zend\Mvc\I18n',
     // ...
],
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ZF3 zend-mvc-骨骼国际化不起作用 的相关文章

  • Doctrine2 更新导致 Zend Framework 3 中 AnnotationRegistry registerLoader 错误

    我正在开发一个基于 Zend Framework 3 0 的 CMS 用 Doctrine 管理 DB I 使用 Composer 管理包时遇到什么问题 最近 我将所有软件包更新到最新版本并将其发送到服务器 其他文件没有任何更改 更新后我的
  • Zend_Auth 最佳实践

    我的目标是要求某些页面登录 我正在使用 Zend Framework MVC 并且我正在尝试查找有关最佳实践的示例 关于我正在寻找的内容的一些注释 我希望未登录的用户获得登录框 然后在经过身份验证后返回到页面的登录版本 我想使用依赖注入 并
  • Zend Framework 2 MVC 应用程序中的依赖关系管理

    由于 ServiceLocatorAwareInterface 可能是从 ZF3 中的 AbstractController 中删除 依赖项应该通过构造函数或 setter 方法传递 考虑到这一点 请考虑用户或站点控制器的用例 包括注册 激
  • ZF3多模块、多种布局

    我正在使用 Zend Framework 3 开发一个多模块网站大约 6 个月 边做边学 在大多数情况下 我都相当成功 但我遇到了一个问题 我将在下面描述 有大约 20 个模块 我已经确定在每个模块 module config php 中我
  • 模块之间共享的 ZF2 型号

    我刚刚开始为一个新项目设置一个新的 ZF2 应用程序 基于 ZF2 骨架 并且正在查看他们的教程Models http framework zend com manual 2 1 en user guide database and mod
  • ZF3 Bootstrap上的单元测试认证

    我在为我的设备运行单元测试时遇到问题IndexController class 单元测试仅执行以下操作 灵感来自zf3单元测试教程 https docs zendframework com tutorials unit testing yo
  • 更改应用程序模块的 module.config.php 时,zf3 骨架应用程序无法工作

    当更改应用程序模块的路径时 zf3 无法正常工作 下载一个zf3骨架应用程序 更改zf3的路由 router gt routes gt home gt type gt Literal class options gt route gt de
  • Zend 2 中两个表的并集

    我想用 zf2 中的 where 子句合并两个表 表1 app followers表2 应用程序用户其中条件可以是任何东西并按updated date 排序 请让我知道 zend 2 的查询 Thanks Using UNION is ZF
  • ZF3会话超时问题

    我一直面临与使用 Zend Framework 3 的会话超时相关的问题 会话在 5 10 分钟内过期 我使用了会话的默认代码 Zf3 框架在全局 php如下 Session configuration session config gt
  • 如何通过配置而不是模块引导程序附加事件侦听器?

    在 ZF3 中 您通常会附加事件侦听器MvcEvent在模块的 Module php 中 如下所示
  • 实体公共字段的学说继承

    我在我的 Web 项目中使用 Zend Framework 3 和 Doctrine ORM 我的应用程序中有几个模块 User Stock Sales 以及每个模块上的一些实体模型 User模块实体 User Account etc St
  • Zend Framework 3 中的 GetServiceLocator

    早上好 我一直在学习使用框架 Zend Framework 进行编程 根据我过去的经验 我使用的是骨架应用程序 v 2 5 也就是说 我过去开发的所有模块都围绕 ServiceManager 的 servicelocator 工作 有没有办
  • 使用 ZF3 在模块引导程序中无法访问视图助手管理器

    Using Zend Framework 2我可以访问ViewHelperManager这样做 public function onBootstrap MvcEvent e viewHelperManager e gt getApplica
  • ZF3 zend-mvc-骨骼国际化不起作用

    我正在尝试评估现在是否是开始迁移到 ZF3 或继续使用 ZF2 开发我的应用程序 的合适时机 因此 我安装了 mvc sculpture 应用程序并完成了 MVC 教程 here https docs zendframework com t
  • 如何编写在正文中包含锚标记的 Zend Framework URL?

    使用 Zend Framework 中设置的标准 MVC 我希望能够显示始终具有锚点的页面 现在我只是在 phtml 文件中添加一个带有 anchor 的无意义参数
  • ACL授权失败后ZF3重定向

    我有一个带有 ACL 的新 ZF3 应用程序 现在 我需要在未经授权的访问的情况下重定向到错误页面 例如 403 我认为最好的方法是触发一个事件 然后捕获它 但我失败了 全部都在我的用户模块中Module php 摘录 namespace
  • ZF3/2 - 如何捕获 EVENT_DISPATCH 侦听器中引发的异常?

    有什么方法可以在 EVENT DISPATCH 监听器中抛出异常吗 class Module public function onBootstrap EventInterface event application event gt get
  • 如何使用tablegateway连接表

    使用tableadapter时如何连接zend3中的表 问题不在于一般如何连接表 而在于如何在 zend 中执行此操作以及在何处放置代码 假设我有一个 table 类 namespace Import Model use RuntimeEx
  • ZF2:如何将参数传递给转发插件,然后我可以在转发它们的方法中获取这些参数?

    我有一个 Action 方法Foo需要参数的控制器 public function fooAction one two a one b two 我需要从某些方法的其他方法转发到该方法Boo控制器 这些参数之一必须是引用参数 唯一的例子就是手
  • 如何在 Zend Framework 3 中注册自定义表单视图助手

    我正在将继承的 Zend Framework 2 应用程序迁移到 Zend Framework 3 并且在注册自定义表单视图助手时遇到了一些困难 这些助手在应用程序使用版本 2 时起作用 主要用于添加标签属性以实现可访问性 例如 这是一个自

随机推荐