首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于django滤波器的上下文数据过滤模型

基于django滤波器的上下文数据过滤模型
EN

Stack Overflow用户
提问于 2017-06-30 11:23:30
回答 1查看 1.9K关注 0票数 1

我有一个模型的详细视图,我想将它与产品列表一起显示,并试图在这个视图中集成django_filter。

错误消息

TypeError at /collections/圣诞/? takes =mens,获取上下文数据需要精确的2个参数(1给定)

过滤器

代码语言:javascript
运行
AI代码解释
复制
class ProductFilter(django_filters.FilterSet):
    class Meta:
    model = Product
    fields = ['categories']

细节视图

代码语言:javascript
运行
AI代码解释
复制
class collection_detail(DetailView):
    model = Collection
      def get_context_data(self, request, **kwargs):
       context = super(collection_detail, self).get_context_data(**kwargs)
       context['collection_list'] = ProductFilter(request.GET, queryset=Product.objects.filter(collection=self.object.id).filter(structure='parent'))
       return context

我打算怎么做

类别筛选器是在链接列表中预先定义的,因此当用户单击与特定类别相关的集合时,详细信息视图的url将类似于/ collection /圣诞/? clicks =mens。

我在这里做错了什么?甚至有可能这样做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-30 11:38:45

在重写的方法中缺少*args

代码语言:javascript
运行
AI代码解释
复制
class collection_detail(DetailView):
    model = Collection

    def get_context_data(self, *args, **kwargs):
        context = super(collection_detail, self).get_context_data(*args, **kwargs)
        context['collection_list'] = ProductFilter(self.request.GET, queryset=Product.objects.filter(collection=self.object.id).filter(structure='parent'))
        return context
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44853573

复制
相关文章

相似问题

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