【问题标题】:Django-Tables2 get current page numberDjango-Tables2 获取当前页码
【发布时间】:2021-09-29 14:31:32
【问题描述】:

我有一个简单的表,我使用 LinkColumn 访问一个视图,该视图将值从 true 切换为 false,不幸的是,这会将我的列表重置为第一页。

现在应该可以将特定页面传递给表格对象了:

table.paginate(page=request.GET.get("page", 1), per_page=25)
    return render(request, "people_listing.html", {"table": table})

如何将当前页码传递给我的视图?该请求不包含此信息,并且我似乎无法在表类中引用 self(至少具有属性 Page)

有什么建议吗?

【问题讨论】:

    标签: django django-tables2


    【解决方案1】:

    好的,有一个解决方案,但可能太复杂了(必须有一种更简单的方法来直接获取页面信息......)

    观看次数:

    # Get the relative position in the Queryset with the same filters as in the ListView
        position = list(CustomModel.objects.filter(column='1234').values_list('id', flat=True)).index(obj.id)
    
    # Calculate the Page Number (assuming 10 Entries per Page)
        if pk <= 10:
            page_number = 1
        else:
            page_number = int((10 + position)/10)
    
    
    # Rebuild the Table Object and set the page_number to the desired page
        table = MyTable(CustomModel.objects.filter(column='1234'))
        table.paginate(page=request.GET.get("page", page_number), per_page=10)
    
        return render(request, "my_app/my_page.html", {"table": table})
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 2012-08-30
      • 2014-05-26
      • 2018-08-05
      • 2022-12-14
      • 1970-01-01
      相关资源
      最近更新 更多