Фильтрация по внешним ключам в Django - PullRequest
12 голосов
/ 10 сентября 2011

У меня есть несколько моделей в Django, где я прикрепляю местоположение к каждому опубликованному блогу:

class Country(models.Model):
    country_name = models.TextField()

class Town(models.Model):
    country = models.ForeignKey(Country)
    town_name = models.CharField(max_length=192)

class Blog(models.Model):
    town = models.ForeignKey(Town)

Я пытаюсь отфильтровать их по названию страны, но получаю сообщение «SyntaxError: ключевое слово не может быть выражением» при попытке выполнить следующее:

blog_list = Blog.objects.filter( town.country.country_name = 'Canada' ).order_by( '-id' )

Какие-нибудь идеи о том, как я мог бы фильтровать по названию страны?

1 Ответ

17 голосов
/ 10 сентября 2011
blog_list = Blog.objects.filter( town__country__country_name = 'Canada' ).order_by( '-id' )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...