繁体   English   中英

在 Django 模板中显示语言图标

[英]Display language icons in Django template

我想在 Django 模板中显示语言图标而不是名称。

我的代码如下所示:

{% load static i18n %}

    {% get_current_language as CURRENT_LANGUAGE %}
    {% get_available_languages as AVAILABLE_LANGUAGES %}
    {% get_language_info_list for AVAILABLE_LANGUAGES as languages %}
    <div id="language">
          {% for language in languages %}
            <ul>
                <li>
                   <a href="/{{ language.code }}/"
                    {% if language.code == LANGUAGE_CODE %} class="active"{% endif %}>
                    {{ language.name|slice:":3" }}
                   </a>
                </li>
            </ul>
          {% endfor %}
    </div>

是否有任何可能的方法来实现该目标,或者我必须尝试不同的方法?

解决方案是将该行更改为:

           <a href="/{{ language.code }}/"
            {% if language.code == LANGUAGE_CODE %} class="active"{% endif %}>
               <img src="/static/images/{{ language.name }}.png"  alt="Geo">
           </a>

你必须将图标放在 static 文件夹中,语言名称为英语 -> 英语等。

更难的部分是在某处将您的一组国旗图像组装在一起。

简单的部分是使用您的语言上下文来获取<img>引用,例如

<img ... src="somewhere/{{language.name|slice:":3"}}.gif" >

您可能想看看django-countries package。使用它,或将其用于想法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM