首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django -特定项目的基于类的视图

Django -特定项目的基于类的视图
EN

Stack Overflow用户
提问于 2020-02-27 03:56:44
回答 1查看 31关注 0票数 0

构建一个Django应用程序,其中我有一个显示不同案例列表的视图。当您单击一个案例时,我希望它会将您带到与该案例相关的项目列表(在本例中是一个设备列表)。我面临的问题是,我不知道如何使视图只显示与该案例相关的项目(目前它显示每个案例中的所有项目)。

视图:

代码语言:javascript
复制
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

代码语言:javascript
复制
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的项目。

EN

回答 1

Stack Overflow用户

发布于 2020-02-27 04:58:21

我已经弄明白了!

代码语言:javascript
复制
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])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60421600

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档