Не переводить выбранные параметры в Zend Framework 1
У меня есть большая форма с множеством выбранных элементов с большим количеством опций каждый. Все переводы работают хорошо (метки, описания, ошибки), но я не хочу переводить опции, показанные в элементе select.
Официальное руководство ничего не говорит об этом, пожалуйста, проверьте следующую ссылку: http://framework.zend.com/manual/1.12/en/zend.form.standardElements.html
Однако здесь говорится: http://framework.zend.com/manual/1.12/en/zend.form.standardElements.html "Если адаптер формы зарегистрирован в форме и / или элементе значения параметров будут переведены для отображения. "
Я не могу удалить адаптер перевода, поэтому мой вопрос: можно ли игнорировать параметры этого элемента?
Ждем ваших новостей. BR
2 ответа
Zend_Form_Element_Multi имеет это:
if ($this->translatorIsDisabled()) {
return false;
}
И существует этот метод на Zend_Form_Element
public function setDisableTranslator($flag)
{
$this->_translatorDisabled = (bool) $flag;
return $this;
}
Итак, я создал метод, который расширяет Zend_Form_Element_Select и вызывает:
$this->setDisableTranslator(true);
Это решило мой вопрос.
Добавлять $this->setTranslator(new Zend_Translate_Adapter_Array(array()));
в начале вашей формы. Это переопределит переводчик по умолчанию, а поскольку новый пустой, он ничего не будет переводить.