【发布时间】:2017-04-22 12:18:16
【问题描述】:
我正在尝试将数据库对象从一个视图传递到另一个视图。但是当我尝试使用 SESSION 来实现这一点时,我得到了这个“不是 JSON 可序列化”错误。
我的Views.py:
def index(request):
listset = TheaterBase.objects.all()
request.session['s_listset'] = listset
def otherview(request):
result = request.session.get('s_listset')
如何在视图之间传递 Database 对象?
提前致谢
【问题讨论】:
-
为什么要这样做?为什么不能在其他视图中进行查询?
-
我需要对所有视图使用相同的查询,所以我需要将它们存储在会话中,以减少服务器的负载。 @丹尼尔罗斯曼
-
这似乎不是一个很好的理由。如果你这样做,它永远不会在添加新项目时更新;并且查询集将为每个用户单独存储。如果您需要共享查询,请使用每个视图调用的通用函数或上下文处理器。
标签: python json django session