首页 > 解决方案 > 使用 changelist_view 在 django admin 中重定向

问题描述

我想在 django 管理面板中重定向:

http://127.0.0.1:8000/admin/events/event/

至:

http://127.0.0.1:8000/admin/events/event/?date__lt=2018-6-11

但我得到一个错误:

找不到关键字参数“{'date__lt': datetime.date(2018, 6, 11)}' 的“events_event_changelist”。尝试了 1 种模式:['admin/events/event/$']

这是我的代码:

def changelist_view(self, request, extra_context=None):
    if not request.method != 'GET':
        print(datetime(2018, 6, 11))
        url = reverse('admin:events_event_changelist', kwargs={'date__lt': date.today()})
        return HttpResponseRedirect(url)

请告诉我哪里出错了

标签: pythondjangoredirectdjango-adminadmin

解决方案


这些不是 URL 模式的一部分,它们只是查询字符串参数。不要将它们作为 kwargs 传递给反转,将它们附加到结果中。

 url = '{}?date__lt={}'.format(reverse('admin:events_event_changelist'), date.today())

推荐阅读