构建一个Django应用程序,其中我有一个显示不同案例列表的视图。当您单击一个案例时,我希望它会将您带到与该案例相关的项目列表(在本例中是一个设备列表)。我面临的问题是,我不知道如何使视图只显示与该案例相关的项目(目前它显示每个案例中的所有项目)。
视图:
class MdeListView(LoginRequiredMixin, ListView):
model = Mde
template_name = 'mde/mde.html'
ordering = [F('date').desc()]
def get_queryset(self):
return Mde.objects.distinct('case_number')
class MdeCaseListView(LoginRequiredMixin, ListView):
model = Mde
template_name = 'mde/mde_case_list.html'urls.py
from django.urls import path
from .views import MdeListView, MdeCreateView, MdeCaseListView
urlpatterns = [
path('<int:pk>/list', MdeCaseListView.as_view(), name='mde_case_list'),
path('new', MdeCreateView.as_view(), name='mde_new'),
path('', MdeListView.as_view(), name='mde'),
]url根据主键转到正确的记录,但从那里我只想要使用与主键相同的case_number的项目。
发布于 2020-02-27 04:58:21
我已经弄明白了!
class MdeCaseListView(LoginRequiredMixin, ListView):
model = Mde
template_name = 'mde/mde_case_list.html'
def get_queryset(self):
pkey = self.kwargs.get("pk")
case = Mde.objects.filter(id=pkey).values_list('case_number', flat=True)
return Mde.objects.filter(case_number=case[0])https://stackoverflow.com/questions/60421600
复制相似问题