Как передать мои выпадающие опции для отображения символов UTF-8 в наборе шаблонов
Я внедряю поддержку символов UTF-8 в своем проекте. мы используем набор инструментов шаблона. В одном из шаблонов у меня есть этот жесткий код выпадающего кода, который не позволяет мне переводить текст. вот фрагмент кода.
<select id="sub_select" name="sub_select">
[% sub_options = [
- { value => 'last', choice =>'translate.$lang.L_Submission' },
- { value => 'all', choice => 'translate.$lang.A_Submissions' },
];
%]
[% INCLUDE dropdown.tmpl
options = sub_options
selected = sub_select
%]
</select>
Где dropdown.tmpl - это централизованный файл, который используется для создания раскрывающихся списков во всем приложении.
Я имею право создать новый dropdown_UTF8.tmpl, который будет поддерживать новый тип выбора, или я могу разместить новую логику в этом dropdown.tmpl. В настоящее время, когда я пытаюсь сделать это с существующим dropdown.tmpl, я получаю translate.$ Lang.A_Submissions и translate.$ Lang.L_Submission в качестве выбора, где, как я ожидаю, будут отображаться переведенные данные. Кто-нибудь может мне с этим помочь.
dropdown.tmpl:
[% valuekey = valuekey || 'value';
choicekey = choicekey || 'choice';
FOREACH opt = options;
- value = opt.$valuekey.defined ? valuekey_prefix _ opt.$valuekey : valuekey_prefix _ opt
- choice = opt.$choicekey or value
%]
[% value = value %]
<option value="[% value %]"[% selected="selected" IF value == selected %]>[% choice %]</option>
[% END -%]
1 ответ
Если я что-то упустил, я думаю, что проблема здесь заключается в простых кавычках вокруг значений для choice
в этих хешах. Одинарные кавычки по определению приведут к тому, что они содержат не интерполированные.
Пытаться:
[% sub_options = [
- { value => 'last', choice => translate.$lang.L_Submission },
- { value => 'all', choice => translate.$lang.A_Submissions },
];
%]