如何在Django-Countries中使用Django Filter的语言选择的详细名称

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在Django-Countries中使用Django Filter的语言选择的详细名称相关的知识,希望对你有一定的参考价值。

我有这个Django过滤器:

from django_countries.data import COUNTRIES

owner__nationality = filters.MultipleChoiceFilter(choices=COUNTRIES, widget=Select2MultipleWidget)

所以我猜我只是使用原始选择字段来过滤国籍(我使用Django Countries来填充数据)正如您在此处的源代码中所看到的,导入是正确的:https://github.com/SmileyChris/django-countries/blob/master/django_countries/data.py

但是在前端,下拉列表如下所示:

enter image description here

如何在那里展示完整的国家/地区?我也不太明白为什么那里只有一个字母。有人可以澄清一下吗?

顺便说一下我对get_FOO_display()的了解

答案

MultipleChoiceFilter选择迭代的元组。你提到的套餐提供COUNTRIES作为字典。试着做

from django_countries.data import COUNTRIES

owner__nationality = filters.MultipleChoiceFilter(
    choices=[(k, v) for k, v in COUNTRIES.items()],
    widget=Select2MultipleWidget
)

以上是关于如何在Django-Countries中使用Django Filter的语言选择的详细名称的主要内容,如果未能解决你的问题,请参考以下文章

如何在 uuid 中使用 IN 运算符 - Django?

如何在 GAE 模板中获取当前页面的 url

如何在ListAPIView中使用django-filter对过滤结果进行排序

历史模型在哪里?

运行 Django 测试时如何查看标准输出?

运行 Django 测试时如何查看标准输出?