Tôi đang cố gắng đánh giá xem đã đến lúc bắt đầu chuyển sang ZF3 chưa (hoặc tiếp tục phát triển ứng dụng của tôi với ZF2). Vì vậy, tôi đã cài đặt ứng dụng mvc-skeleton và đi qua hướng dẫn MVC (here) hoạt động hoàn hảo cho đến khi tôi đến phần quốc tế hóa.ZF3 zend-mvc-skeleton quốc tế hóa không hoạt động
Tôi đã cài đặt các thành phần (tức là thành phần zend-i18n và zend-mvc-i18n), đã tạo các tệp dịch (ví dụ: en_US.mo và en_US.po) và sao chép chúng vào thư mục module/Application/language/
của chúng tôi và thêm cấu hình trong ứng dụng tập tin cấu hình.
// in a module's module.config.php:
'translator' => [
'locale' => 'en_US',
'translation_file_patterns' => [
[
'type' => 'gettext',
'base_dir' => __DIR__ . '/../language',
'pattern' => '%s.mo',
],
],
],
Và tất nhiên, bổ sung các văn bản để dịch trong file layout.phtml
<p>© 2016 by Examples Ltd. <?= $this->translate('All rights reserved') ?></p>
Tuy nhiên, vì một lý do nó không làm việc
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}
Câu hỏi của tôi là đơn giản. Bạn đã thành công trong việc này hay bạn có bất kỳ ý tưởng gì về nó không? Bất kỳ trợ giúp sẽ được đánh giá cao. Cảm ơn nhiều.
Bạn có biết làm thế nào để cấu hình dịch/i18n trên bộ điều khiển hoặc thông qua plugin của bộ điều khiển? – rafaelphp