gpt4 book ai didi

python - Django:使用 HttpResponseRedirect 将查询集传递到另一个 View

转载 作者:行者123 更新时间:2023-12-01 05:50:56 25 4
gpt4 key购买 nike

在 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 将查询集传递到另一个 View /页面?或者我应该尝试其他方法来做到这一点?

我希望将 ListView 中预先选择的记录带到新页面,以便我可以迭代它们。

最佳答案

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

1> 如果您想要做的只是按模型中的某些字段进行过滤,那么您可以在 url 中传递过滤器。示例:'/export/?id_gte=3&status_exact=3'

2> 在导出操作函数中,您可以在 session 中设置某些变量或整个查询集,然后在导出 View 中检查它

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/")

关于python - Django:使用 HttpResponseRedirect 将查询集传递到另一个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14323467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com