Я пытаюсь локализовать существующее приложение cakephp. По большей части у меня все работает так, как я хочу, но есть один сценарий, который я не могу понять.
Я использую помощник по формам для создания такой формы:
echo $this->Form->create('search', array('url' =>
array('controller' => '/',
'action' => '/search/searcher'),
'onsubmit'=>'return checkForm();',
'class'=>'find-form'));
echo '<fieldset>';
echo $this->Form->input('name', array(
'type'=>'hidden',
'div'=>false,
'id'=>'name',
'class'=>'nice',
'label'=>false,
'value'=>''
));
echo $this->Form->input('myvalue', array(
'type'=>'text',
'div'=>false,
'id'=>'searchval',
'class'=>'nice',
'value'=> __('Enter search string'),
'label'=>false));
Проблема со строкой:
'value'=> __('Enter search string'),
Полученный HTML выглядит так:
...
<fieldset>
<input type="hidden" name="data[search][name]"
id="name" value="" />
Enter Search String
<input name="data[search][myvalue]"
type="text"
id="searchval"
class="nice"
and so on.
Значение «Введите строку поиска» переведено правильно, но оно находится за пределами тега ввода, поэтому оно отображается за пределами поля поиска.
Я пробовал различные варианты кода, такие как:
'value'=> echo __('Enter search string'),
'value'=> `__('Enter search string')`,
И, похоже, ничего не работает. Как я уже сказал, он работает в других областях представления (хотя в качестве значения массива), но я не могу заставить это работать.
Кстати, код до того, как я начал, выглядел так:
'value'=> 'Enter search string',
Есть идеи?
Спасибо за ваше время.