【发布时间】:2017-01-18 12:35:41
【问题描述】:
我有一个允许语言选择的 Jekyll 3 项目。我们使用 'jekyll-multiple-languages-plugin' gem 进行国际化。
我们有一个词汇表,应该根据所选语言显示德语术语或英语术语。我使用 'jekyll-multiple-languages-plugin' gem 提供的变量 site.lang 获取所选语言。
现在,glossary.html 看起来像这样
<div id="glossary">
{% if site.lang == "de" %}
{% for term in site.data['terms_de'] %}
<!-- German glossary goes here -->
{% endfor %}
{% elsif site.lang == "en" %}
{% for term in site.data['terms_en'] %}
<!-- English glossary goes here -->
{% endfor %}
{% endif %}
</div>
不过,我很想拥有这样的东西
<div id="glossary">
{% for term in site.data["terms_#{site.lang}"] %}
<!-- Glossary goes here -->
{% endfor %}
</div>
但由于某种原因,字符串插值"terms_#{site.lang}" 不起作用。我也试过'terms_'+site.lang
我认为插值不起作用,因为当我在页面中输入 {{ site.lang }} 时,我看到了选择的语言,但是当我写 {{ "terms_"+site.lang }} 时,我什么也没看到。
提前致谢。
【问题讨论】:
标签: ruby jekyll interpolation