在Django的帖子请求中获取价值

时间:2013-11-13 22:53:34

标签: django string unicode django-forms django-views

我在django app中获得以下帖子数据

POST
            Variable                      Value
            csrfmiddlewaretoken    u'LHM3nkrrrrrrrrrrrrrrrrrrrrrrrrrdd'
            id                     u'{"docs":[],"dr":1, "id":4, "name":"Group", "proj":"/al/p1/proj/2/", "resource":"/al/p1/dgroup/4/","route":"group", "parent":null'

我正在尝试获取变量id中的id值,即"id":4(值4)。当我request.POST.get('id')时,我得到了整个json字符串。 u'{"docs":[],"dr":1, "id":4, "name":"Group", "proj":"/al/p1/proj/2/", "resource":"/al/p1/dgroup/4/","route":"group", "parent":null'如何在字符串中获取"id"

2 个答案:

答案 0 :(得分:1)

您发送的数据只是一个json字符串。

您必须先解析该字符串,然后才能访问其中的数据。为此,您可以使用Python的json模块(如果您使用的是Python 2.7,它应该可用)。

import json
data = json.loads( request.POST.get('id') )
id = data["id"]

如果你以某种方式没有json模块,你可以得到simplejson模块。

有关详细信息,请参阅此问题:best way to deal with JSON in django

答案 1 :(得分:0)

这种情况正在发生,因为id是字符串,而不是应该是字典。请提供您的模板和查看代码以查找问题来源。