title: Django-filter issue
body: <p>I have this problem, so i did a filtering by categories on my AllProducts Page and it worked perfectly (django-filter). The thing is that the startup im working at has another Django Model which is ProductInStore and that's an additional model connected to Product which has to show all the products that a certain shop has.</p>
  <pre><code>class Product(models.Model):
      name = models.CharField(max_length=200)
      slug = models.SlugField(max_length=200, unique=True, null=False, editable=False)
      created_at = models.DateTimeField(editable=False, default=timezone.now)
      updated_at = models.DateTimeField(default=timezone.now)
      product_category = models.ManyToManyField(EcommerceProductCategory)
      description = RichTextField(max_length=2000, null=True, blank=True)
      product_producer = models.ForeignKey('ProductProducer', on_delete=models.CASCADE)
      creator = models.ForeignKey('users.CustomUser', on_delete=models.CASCADE, null=True, blank=True, related_name='product_creator')
      points_from_reviews = models.DecimalField(max_digits=6, decimal_places=2, default=0, help_text='Średnia ocena produktu')
      unique_id = models.CharField(max_length=256, unique=True)
      type_of_unique_id = models.CharField(max_length=64)
      product_img = models.FileField(upload_to='ecommerce_product_img/', null=True, blank=True)
  </code></pre>
  <pre><code>class ProductInStore(models.Model):
      product = models.ForeignKey('Product', on_delete=models.CASCADE)
      store = models.ForeignKey('Store', on_delete=models.CASCADE)
      price = models.DecimalField(max_digits=6, decimal_places=2, default=0, help_text='Cena w sklepie')
      currency = models.CharField(max_length=4)
      url = models.CharField(max_length=200)
      created_at = models.DateTimeField(editable=False, default=timezone.now)
      updated_at = models.DateTimeField(default=timezone.now)
  </code></pre>
  <p>The thing is that when im filtering by categories in Product model it works flawlessly and here's how it looks with Product Model</p>
  <pre><code>def all_products(request):
      product = Product.objects.all().order_by('-created_at')
      search_filter = ProductFilter(request.GET)
      product = search_filter.qs
      paginator = Paginator(product, 20)
      page_number = request.GET.get('page')
      page_obj = paginator.get_page(page_number)
  
      context = {
          'page_obj': page_obj,
          'search_filter': search_filter,
      }
      return render(request, 'ecommerce/all_products.html', context)
  
  </code></pre>
  <pre><code>class ProductFilter(django_filters.FilterSet):
      name = django_filters.CharFilter(lookup_expr='icontains', label='Nazwa')
      product_category = django_filters.ModelChoiceFilter(queryset=EcommerceProductCategory.objects.all())
  
      class Meta:
          model = Product
          fields = ['product_category']
  
      def __init__(self, *args, **kwargs):
          super(ProductFilter, self).__init__(*args, **kwargs)
          self.filters['product_category'].label = &quot;Wszystkie kategorie&quot;
  </code></pre>
  <p>But i have no idea how to change queryset(or filter) on the ProductInStore filter.
  Here's how it looks right now:</p>
  <pre><code>class ProductStoreFilter(django_filters.FilterSet):
      name = django_filters.CharFilter(lookup_expr='icontains', label='Nazwa')
      product_category = django_filters.ModelChoiceFilter(queryset=EcommerceProductCategory.objects.all())
  
      class Meta:
          model = ProductInStore
          fields = ['product_category']
  
      def __init__(self, *args, **kwargs):
          super(ProductStoreFilter, self).__init__(*args, **kwargs)
          self.filters['product_category'].label = &quot;Wszystkie kategorie&quot;
  </code></pre>
  <pre><code>def all_products_in_store(request, slug):
      products_all = ProductInStore.objects.all().filter(store__slug=slug).order_by('-created_at')
      featured_products = ProductInStore.objects.all().filter(store__slug=slug).order_by('-created_at')[:3]
      store_filter = ProductStoreFilter(request.GET)
      products_all = store_filter.qs
      paginator = Paginator(products_all, 20)
      page_number = request.GET.get('page')
      page_obj = paginator.get_page(page_number)
      context = {
          'store_name': Store.objects.get(slug=slug).name,
          'page_obj': page_obj,
          'featured_products': featured_products,
          'store_filter': store_filter,
      }
      return render(request, &quot;ecommerce/all_products_in_store.html&quot;, context=context)
  </code></pre>
  <p>But i know it wont work, because it doesnt make sense, i just have no idea how can i change it to make it work. Now when i try to filter something on site it gives me</p>
  <pre><code>FieldError at /ecommerce/wszystkie-produkty/sklep/sadfdfsadfs
  Cannot resolve keyword 'product_category' into field. Choices are: created_at, currency, id, price, product, product_id, store, store_id, updated_at, url
  </code></pre>
  <p>It's probably a trivial problem, but im struggling so much with this one. I would be so thankful if someone could help me.</p>