Как написать QuerySet с использованием выражений F в поле FK связанной модели в Django - PullRequest
0 голосов
/ 14 января 2020

В моей функции autocomplete я использую следующее выражение запроса для получения значения поля модели:

def CitySearch(request):
    if request.is_ajax():
        q = request.GET.get('term','')
        names = City.objects.filter(name__icontains=q).annotate(value=F('name'), label=F('name')).values('id', 'value', 'label')

    ...
    ...
    return HttpResponse.....

Как отфильтровать (модель) City поле "name" в поле FK связанной модели "Country"?

1 Ответ

0 голосов
/ 14 января 2020

Есть ли в следующей стране, в которой есть угадывание, поле имени.

 names = City.objects.filter(name__icontains=q).annotate(value=F('name'), label=F('name')).values('id', 'value', 'label', 'country__name')

Или вы можете сделать,

 names = City.objects.filter(name__icontains=q).annotate(value=F('name'), country_name=F('country__name'), label=F('name')).values('id', 'value', 'label', 'country_name')
...