如何获取从django.template导入的RequestContext字典

问题描述 投票:0回答:2

我的 django 项目中有以下代码。

ctxt = RequestContext(request, {
    'power': power,
    'attack': attack,
    'defense': defense,
    })  

现在我想通过

ctxt

得到这本字典,如下所示
{
    'power': power,
    'attack': attack,
    'defense': defense,
}

我尝试过

ctxt.dicts
,但这包含太多项目。所以我查看了源代码,并在
class RequestContext(Context):

中找到了这些代码
for processor in get_standard_processors() + processors:
    self.update(processor(request))

我认为可以带入其他物品。

那么我怎样才能得到它呢?

顺便说一句,如果你想知道我为什么要这样做,你可以看看我之前问过的这个问题。

如何在django中重写render_to_response以对整个项目进行最少的更改来获取json

python django
2个回答
19
投票

我参加聚会有点晚了,但是您可以使用

从 RequestContext 对象中获取字典
ctxt.flatten()

如果您使用的是 Django>=1.7。 (文档)


2
投票

ctxt.dict是字典堆栈,所以你只需要:

ctxt.dict[0]
© www.soinside.com 2019 - 2024. All rights reserved.