0

我正在尝试检索与namedjango Country 共享相同的标签列表。(我将把它扔到我的自动完成搜索中)。我所拥有的不起作用:

看法:

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吗?

4

2 回答 2

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()
于 2012-08-17T21:24:17.827 回答
0

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

于 2012-08-17T21:24:53.303 回答