过滤Django国家/地区列表

时间:2012-08-17 21:15:50

标签: python django django-views

我正在尝试检索与django国家/地区共享同一name的标记列表。 (我将把它扔进我的自动完成搜索)。我所拥有的不起作用:

查看:

from django_countries.countries import COUNTRIES
...

@login_required
def country_tags(request):
    result = {}
    tags = Tags.objects.all()
    countries = list(COUNTRIES)
    for tag in tags:
        for country in countries: 
            if country.name == tag.name:
                result[tag.name] = tag.name.title()
    return HttpResponse(json.dumps(result))

无法弄清楚为什么这不起作用。我错了引用country.name

2 个答案:

答案 0 :(得分:3)

这是一个应该有效的版本。 COUNTRIES是一个2元组的元组。

countries_only = [x[1] for x in COUNTRIES]
tags = Tag.objects.filter(tag.name__in=countries_only)
results = {}
for t in tags:
   results[t.name] = t.name.title()

答案 1 :(得分:0)

COUNTRIES只是一个包含2个元素元组的列表 - 没有name属性。你应该做country[1] == tag.name

之类的事情