Возможно ли `.filter ()` модель в `FilterSet` пользователем? - PullRequest
0 голосов
/ 01 апреля 2019

Я пытаюсь отфильтровать listView по свойству, и это свойство зависит от пользователя, и у пользователя может быть больше. Прямо сейчас мой фильтр перечисляет все свойства каждого пользователя.

Мои модели:

class Locations(models.Model):
    location =  models.CharField(max_length=50)
    owner = models.ForeignKey(User,related_name='owner',on_delete=models.CASCADE)


class MyModel(models.Model):
    user = models.ForeignKey(User,related_name='fk',on_delete=models.CASCADE)
    locations = models.ForeignKey(Locations, related_name='locat', on_delete=models.CASCADE)

Мой фильтр:

class locationFilter(django_filters.FilterSet):


class Meta:
    model = MyModel
    fields = ['locations',]

Мой взгляд:

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    context['filter'] = medenceFilter(self.request.GET, queryset=self.get_queryset())
    return context

То, что я до сих пор пытался, это использовать .filter(locations__owner=self.request.user,)) на мой взгляд, а также пробовал в файле filters.py, но ни один из них не работал.

Есть ли способ отфильтровать модель или, может быть, как-то в шаблоне?

Спасибо

...