parseJSON在django模板中的ajax成功回调函数中返回null

时间:2015-02-13 13:27:46

标签: javascript ajax json django django-templates

我花了很多时间来解决这个问题。

我正在使用Django 1.6,我基本上尝试使用AJAX通过我的django模板发送按钮点击请求。关于AJAX的成功,我正在尝试提醒我请求的数据。

这是我在views.py

中的代码
def requestFunction(request, ringslug):

LOGGER.info (" MYOBJ ")   
Myobj= Myobj.objects.get(slug=ringslug)    
LOGGER.info (Myobj)
LOGGER.info (type(Myobj))

if request.is_ajax() and request.POST:
    LOGGER.info('is_ajax')
    context={'Myobj' : str(Myobj)}
    data = simplejson.dumps(context)
return HttpResponse(data, mimetype="text/json")

所以我的MyObj只是来自django数据库的查询,data是JSONnified数据。

在我的django模板中,这就是我试图检索它的方式。

success: function(data) {


                                alert(data.MyObj) //returns obj name as given in DB
                                alert(typeof data.MyObj)   //string type
                                var MyParsedObj = jQuery.parseJSON(data);
                                alert(typeof MyParsedObj)  //returns object type
                                alert(jQuery.parseJSON(data))  //returns null

                     },

正如您所理解的那样,data包含我的数据库信息。我的第一个问题是如何从data访问不同的数据库字段?我尝试过使用data.Myobj.MyDBField,但这不起作用?我的第二个问题是为什么解析后的数据尽管将类型作为对象返回仍返回null值。 很长时间以来一直对此感到困惑。请帮忙

1 个答案:

答案 0 :(得分:0)

我非常确定将模型实例转换为字符串str(MyObj)并未按预期序列化您的实例