Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:使用HttpResponseRedirect将查询集传递给另一个视图_Python_Django - Fatal编程技术网

Python Django:使用HttpResponseRedirect将查询集传递给另一个视图

Python Django:使用HttpResponseRedirect将查询集传递给另一个视图,python,django,Python,Django,在admin.py中,我设置了一个名为导出的操作,如下所示 class RecipientAdmin(admin.ModelAdmin): actions = [export] export.short_description = "Export Stuff" admin.site.register(Recipient, RecipientAdmin) 这将运行以下函数 def export(modeladmin, request, queryset): return Http

在admin.py中,我设置了一个名为导出的操作,如下所示

class RecipientAdmin(admin.ModelAdmin):
    actions = [export]
export.short_description = "Export Stuff"
admin.site.register(Recipient, RecipientAdmin)
这将运行以下函数

def export(modeladmin, request, queryset):
    return HttpResponseRedirect("/export/")
我的问题是

我如何将查询集传递到另一个视图/页面?可以使用HttpResponseRedirect吗?或者有没有其他方法可以让我这么做


我希望已在列表视图中预选的记录被带到新页面,以便我可以对其进行迭代。

有两种方法可以做到这一点

1> 如果您只想按模型中的某些字段进行筛选,那么您可以在url中传递筛选器。示例:'/export/?id\u gte=3&status\u exact=3'

2> 在导出操作函数中,可以在会话中设置一些变量或整个queryset,然后在导出视图中检查它

def export(modeladmin, request, queryset):
    """
    not sure if this will work
    """
    request.session['export_querset'] = queryset

    """
    if above does not work then just set this and check for it in view and u can make the queryset again if this is set 
    """
    request.session['export_querset'] = 1
    return HttpResponseRedirect("/export/")

为什么要重定向?是否可以从函数
export()调用
/export/
后面的视图
?我想要一个带有附加选项的中间确认页面。我认为过滤器不起作用,因为我想要将列表视图中预选的记录带到新页面,以便我可以对其进行迭代。然后,您可能可以在会话中设置查询集,怎么样