我有重定向到URL的函数。
return redirect('/orders')
URL/orders
有一些正在传递给它的上下文数据。
我想在视图中传递一些附加数据以及来自URL函数的数据,如:
return redirect('/orders', {'message':'some_message'})
根据文件我这样做过:
return redirect('/orders', message='some_message')
但它没有将任何数据传递回html。
那么如何通过重定向传递数据呢?
Tags:
如果它只是一个小项目,比如
?status=2
,那么可以用通常的方式将它添加到URL中。(撇开小问题不谈:小心,这可能会对搜索引擎如何为你的网站建立蜘蛛网产生负面影响,也就是说,造成重复的内容问题)但是,对于您的示例,将整个“消息”字符串传递到下一页时,我建议使用Django's Messages framework的方式:使用Django's Session engine。
我的意思是你总是可以使用
get_context_data
方法来实现这一点。此方法始终将数据从视图发送到模板。如果使用
http redirect
(您提到的情况),则需要通过url的查询字符串传递参数:另一种方法是使用自定义参数调用其他视图,通常不建议这样做。
编辑: 您还可以使用django.sessions来生成基于中央请求的消息传递。
相关问题 更多 >
编程相关推荐