gpt4 book ai didi

django - 从 Django View 返回多个项目(ajax)

转载 作者:行者123 更新时间:2023-12-01 07:16:40 25 4
gpt4 key购买 nike

我的页面上有一个使用 ajax 的函数。 ajax 转到 Django View ,然后它可以为我返回某种数据。不幸的是,我目前只能让它返回一条数据。第二个作为字符串“success”返回。这就是我要做的:

Ajax :

 success: function(data, message) { 
if(data === 'False'){
$('#mailsquare').css('background-color', '#A80000');
$('.dropdown-menu').prepend('<li class="message" id="{{item.id}}">'+message.substring(0,30)+'</li>');
} else {
$('#mailsquare').css('background-color', '#1b1b1b');
}
},

查看:

@login_required
def checkMail(request):

user = request.user.get_profile()

i = inbox.objects.get(user = user)
read = i.read

new = i.message.order_by('created')[:1]

return HttpResponse(read, new)

前置语句不使用它正在接收的“message”值,而只是插入字符串“success”。 “data”参数处理正确。

最佳答案

success方法定义如下:

success: function(data, textStatus, jqXHR) { 

因此,message 实际上是 textStatus 因此就是结果。

您需要从 View 正确发送数据才能正常工作。

一种方法是:

@login_required
def checkMail(request):
user = request.user.get_profile()
read = inbox.objects.get(user = user).read
newest = i.message.order_by('created')[:1]

return HttpResponse(simplejson.dumps({'read': read, 'newest': newest}))

以及js中

success: function(data, textStatus, jqXHR) { 
var read = data.read;
var newest = data.newest;
//rest of the stuff
}

关于django - 从 Django View 返回多个项目(ajax),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18152126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com