Не переводить выбранные параметры в 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())); в начале вашей формы. Это переопределит переводчик по умолчанию, а поскольку новый пустой, он ничего не будет переводить.

Другие вопросы по тегам