Django Queryset не отображает все результаты, относящиеся к пользователю

я пытаюсь показать данные, связанные с таблицей заказов

VIEWS.py

class HBTYReadView(DetailView):
model = HbtyOrder
context_object_name = 'hairbty'
template_name = 'accounts/modals/hairbty/read_hbty.html'

MODELS.PY

class HbtyOrder(models.Model):
STATUS = (
        ('Pending', 'Pending'),
        ('Out for delivery', 'Out for delivery'),
        ('Delivered', 'Delivered'),
        ) 

hbtycustomer = models.ForeignKey(HbtyCustomers, on_delete=models.SET_NULL, blank=True, null=True)
itm = models.CharField(max_length=200, null=True)
date_created = models.DateTimeField(auto_now_add=True, null=True, blank=True)
status = models.CharField(max_length=200, null=True, choices=STATUS)

URLS.PY

path('read_hairbty/<int:pk>', views.HBTYReadView.as_view(), name='read_hairbty'),

В настоящее время показывает пользователя с одним заказом, но не показывает пользователя с большим количеством заказов. СПАСИБО

Проблема была в Views.py, правильный способ - переопределить get_queryset и filter, как посоветовал @Marco.

Views.py

class HBTYReadView(generic.ListView):
model = HbtyOrder
context_object_name = 'hairbty'
template_name = 'accounts/modals/hairbty/read_hbty.html'
success_url = reverse_lazy('read_hairbty')
allow_empty = False
paginate_by = 100

def get_queryset(self):
    qs = self.model.objects.filter(hbtycustomer_id=self.kwargs['pk'])
    p_f = HbtyOrdersFilter(self.request.GET, queryset=qs)
    return p_f.qs

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    context['filter'] = HbtyOrdersFilter(self.request.GET, queryset=self.get_queryset())
    return context
Вернуться на верх