Jquery 在模板中传递AJAX和Django视图

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。这样做很容易 推荐信 确保证明文件是模型对象而不是查询集 有关如何将对象转换为

您好,我正在尝试将我的视图传达给我的ajax脚本

url.py

我的html中的我的脚本(内部脚本):

presentation.html

url:id+'/video_-commential/',我是否缺少访问url的内容?谢谢你的回复

编辑: 错误显示:

您应该使用
.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();