我沒有得到it!可以請某人解釋一下,如何翻譯表單標籤?一個簡單的例子會很棒。如何翻譯Zend Framework 2中的表單標籤?
預先感謝您!
類搜索\表格\ CourseSearchForm
...
class CourseSearchForm extends Form {
...
public function __construct(array $cities) {
parent::__construct('courseSearch');
...
$this->add(array(
'name' => 'city',
'type' => 'Zend\Form\Element\Select',
'options' => array(
'label' => 'Stadt',
'value_options' => $this->cities,
'id' => 'searchFormCity',
),
));
...
}
}
視圖腳本/module/Search/view/search/search/search-form.phtml
<?php echo $this->form()->openTag($form); ?>
<dl>
...
<dt><label><?php echo $form->get('city')->getLabel(); ?></label></dt>
<dd><?php echo $this->formRow($form->get('city'), null, false, false); ?></dd>
...
</dl>
<?php echo $this->form()->closeTag(); ?>
<!-- The formRow(...) is my MyNamespace\Form\View\Helper (extends Zend\Form\View\Helper\FormRow); the fourth argument of it disables the label. -->
The module/Application/config/module.config.php
被配置:
return array(
'router' => ...
'service_manager' => array(
'factories' => array(
'translator' => 'Zend\I18n\Translator\TranslatorServiceFactory',
),
),
'translator' => array(
'locale' => 'de_DE',
'translation_file_patterns' => array(
array(
'type' => 'gettext',
'base_dir' => __DIR__ . '/../language',
'pattern' => '%s.mo',
),
),
),
'controllers' => ...
'view_manager' => ...
);
我還編輯我的視圖,並使用FormLabel
視圖助手:
<dt><label><?php echo $this->formLabel($form->get('city')); ?></label></dt>
此外我調試的FormLabel
在的地方,其中使用tranlator(線116-120) - - 似乎沒問題。
但它仍然無法正常工作。
EDIT
的(測試)項的標籤,我手動添加到de_DE.po
文件被tranlated。 ZF2方面的問題實際上是,我在視圖腳本中使用$form->get('city')->getLabel()
而不是$this->formlabel($form->get('city'))
。
現在的問題是,標籤不會被添加到de_DE.po
文件中。但這不再是ZF2的問題,所以我接受Ruben的答案並開啓了一個新的Poedit問題。
請加你目前有一些代碼。它會讓你更容易地幫助你,看看問題是什麼。 – Ruben
感謝您的快速響應!我現在添加了相關的代碼。 – automatix