Фильтр Django, возвращающий ошибки атрибутов

У меня есть следующий код, который предназначен для создания фильтрованного представления моего набора данных на основе нескольких выпадающих выборов, определенных в MyFilter. В моем /picks url я вижу строку поиска, но нет критериев для фильтрации. Когда я перехожу к /picks/8 для проверки фильтрации, я получаю следующий атрибут с моей моделью. Я также пробовал orders = Pick.order_set.all(), но тоже безрезультатно. Есть предложения, как заставить это работать?

error:

'Pick' object has no attribute 'model'

pick_list.html:

<form method="get">
  {{myFilter.form}}

  <button class="btn btn-primary" type="submit">Search</button>
</form>

views.py

def week(request):
    #orders = Pick.objects.get(id=pk_test)
    orders = Pick.objects.all()
    #orders = week.order_set.all()

    myFilter = PickFilter(request.GET, queryset=orders)
    orders = myFilter.qs 

    context = {'week':week, 'orders':orders, 'order_count':order_count,
    'myFilter':myFilter}
    return render(request, 'app/pick_list.html',context)

filters.py

class PickFilter(django_filters.FilterSet):
    age = CharFilter(field_name='name', lookup_expr='icontains')
    name = CharFilter(field_name='name', lookup_expr='icontains')


    class Meta:
        model = Pick
        fields = '__all__'
        exclude = ['photo']

models.py

class Pick(models.Model):

    submitter = models.CharField(max_length=50, verbose_name='Submitter', null=True, blank=True)
    week = models.CharField(max_length=50, verbose_name='Week', null=True, blank=True)
    name = models.CharField(max_length=50, verbose_name='Name', null=True, blank=True)
    photo = models.CharField(max_length=50, verbose_name='Photo', null=True, blank=True)
    #photo = models.ImageField(upload_to="media", max_length=500, verbose_name='Photo', null=True, blank=True)
    hometown = models.CharField(max_length=50, verbose_name='Hometown', null=True, blank=True)
    age = models.IntegerField(verbose_name='Age', null=True, blank=True)
    progress = models.IntegerField(verbose_name='Progress', null=True, blank=True)
    occupation = models.CharField(max_length=50, verbose_name='Occupation', null=True, blank=True)
    elim_week = models.CharField(max_length=50, verbose_name='Week Eliminated', null=True, blank=True)
    rank = OrderField(verbose_name='Rank', null=True, blank=True)

    def __str__(self):
        return self.name

    def get_fields(self):
        return [(field.verbose_name, field.value_from_object(self)) for field in self.__class__._meta.fields]
    
    def get_absolute_url(self):
        return reverse('app:pick-update', kwargs={'pk': self.pk})

    class Meta:
        db_table = 'pick'
        ordering = ['rank']
        verbose_name = 'Pick'
        verbose_name_plural = 'Picks'

urls.py

from django.urls import path
from .views import *

app_name = 'app'

urlpatterns = [
    path('', home, name='home'),
    path('picks/', PickList.as_view(), name='pick-list'),
    path('picks/filter/', week, name="week"),
]

Вернуться на верх