我正在制作一个显示 5x5 Dota 2玩家物品背包网格的 AJAX 分页模板(见截图——它是由 steam 制作的)。
问题是,一个页面可以有空槽。
下面的代码不会处理它。如果第二个 slot 为空(没有Item
valueslot_nb
字段2
),当它应该显示在第二个页面时,具有 value 的对象将显示在第一页上(slot_nb 索引从Item
开始)slot_nb
25
0
def get_pagination_page(page=1):
items = Items.objects.all()
paginator = Paginator(items, 25) # 25 items per page
try:
page = int(page)
except ValueError:
page = 1
try:
items = paginator.page(page)
except (EmptyPage, InvalidPage):
items = paginator.page(paginator.num_pages)
return items
我基本上想要的是渲染每个页面Item.objects.filter(slot_nb=range(((page_nb*25)-25)), ((page_nb*25)-1))
(page_nb
从 1 开始)
有可能实现这样的目标吗?