я пытаюсь использовать django -graphene и испытываю трудности с фильтрацией по полям внешнего ключа.
class Country(SupplierProduct):
name = models.CharField(max_length=100)
class City(SupplierProduct):
name = models.CharField(max_length=100)
country = models.ForeignKey(Country, on_delete=models.CASCADE)
class Location(models.Model):
city = models.ForeignKey(City, on_delete=models.CASCADE)
street = models.CharField(max_length=200)
number = models.IntegerField('House Number')
class Hotel(SupplierProduct):
name = models.CharField('hotel name', max_length=500)
rate = models.IntegerField('number of stars')
location = models.ForeignKey(Location, on_delete=models.CASCADE)
и я пытаюсь упростить запросы, переименовывая поля и создавая свой собственный класс фильтра .
class LocationFilter(df.FilterSet):
country_name = df.CharFilter(field_name='city__country__name', lookup_expr='icontains')
city_name = df.CharFilter(field_name='city__name', lookup_expr='icontains')
class Meta:
model = Location
fields = ['country_name', 'city_name']
Теперь я хотел бы узнать, есть ли способ для меня сделать класс фильтра отеля, чтобы использовать этот фильтр также для своего поля местоположения? как некое наследство, что каждая модель, в которой есть местоположение, может легко фильтроваться по ее полям