Jquery 在模板中传递AJAX和Django视图
您好,我正在尝试将我的视图传达给我的ajax脚本 url.py 我的html中的我的脚本(内部脚本): presentation.html url:id+'/video_-commential/',我是否缺少访问url的内容?谢谢你的回复 编辑: 错误显示:Jquery 在模板中传递AJAX和Django视图,jquery,python,ajax,django,Jquery,Python,Ajax,Django,您好,我正在尝试将我的视图传达给我的ajax脚本 url.py 我的html中的我的脚本(内部脚本): presentation.html url:id+'/video_-commential/',我是否缺少访问url的内容?谢谢你的回复 编辑: 错误显示: 您应该使用.get,而不是使用.filter,因为它应该返回一个对象。错误表明QuerySet不可Json序列化,这一点非常明显。您需要的是将对象转换为dict。这样做很容易 推荐信 确保证明文件是模型对象而不是查询集 有关如何将对象转换为
您应该使用
.get
,而不是使用.filter
,因为它应该返回一个对象。错误表明QuerySet不可Json序列化,这一点非常明显。您需要的是将对象转换为dict。这样做很容易
推荐信
确保证明文件是模型对象而不是查询集
有关如何将对象转换为dict的更多详细信息,请查看
旁注:最好使用完整的url发出json请求。如果您使用的是Django模板,您可以使用{%url'video\u commential'id%}
您可以检查您的网络并详细说明错误是什么吗?检查浏览器中的元素并检查“网络”选项卡,然后告诉我们错误是什么?您能检查一下控制台中是否有任何错误吗?我更新了我的问题。url:这将添加到您当前的url“id+”/video_-estimonal/“so~>失败。Url无法捕获此信息如何将id连接到Url然后错误为return JsonResponse(context)
not Url;你的意思是,url:{%url'视频\u testismonial'id%}?是的,但你的版本正在运行。您遇到的错误与可序列化对象有关。但是url:{%url'video\u testismonial'id%}
如果js在.html文件中,则可以正常工作
from .views import (
video_testimonial,
)
urlpatterns = [
url(r'^(?P<id>\d+)/video_testimonial/$', video_testimonial, name='video_testimonial'),
]
def video_testimonial(request, id):
testimonial = Testimonial.objects.filter(id=id)
if request.is_ajax():
context = {
'testimonial': testimonial,
}
return JsonResponse(context)
else:
raise Http404
function showVideoTestimonial() {
var id = parseInt($('.carousel-inner a').attr('id'));
$.ajax({
url: id +'/video_testimonial/',
success: function (data) {
console.log(data.testimonial);
$('.carousel-inner a').click(function () {
console.log(id);
});
}
})
}
showVideoTestimonial();