Python Django:如何使用Ajax喜欢对象

Python Django:如何使用Ajax喜欢对象,python,django,Python,Django,这是我的观点 class ObjLike(RedirectView): def get_redirect_url(self, *args, **kwargs): id = self.kwargs.get('id') obj = get_object_or_404(Data, id=id) user = self.request.user if user.is_authenticated(): if user in obj.likes.all():

这是我的观点

class ObjLike(RedirectView):
def get_redirect_url(self, *args, **kwargs):
    id = self.kwargs.get('id')
    obj = get_object_or_404(Data, id=id)
    user = self.request.user
    if user.is_authenticated():
        if user in obj.likes.all():
            obj.likes.remove(user)
        else:
            obj.likes.add(user)
那么在这个视图之后,我如何将用户重定向到同一个页面呢

我使用了“返回重定向(request.META['HTTP_REFERER']),但它给出了一个错误“name'request'未定义”

我不能使用get absolute URL方法,我在几个地方使用这个视图


那么,我如何才能做到这一点呢?

要喜欢使用ajax调用的对象,请执行以下操作 首先,在html中,我们希望创建一个类似按钮:

<button id="like">Like!</button>
注意:您可以自定义like视图,以检查用户是否已经喜欢


你能告诉我你在这个视图中想做什么吗?因为我认为你应该使用ajax调用,而不是重定向用户,然后将他们重定向到上一页。然后使用ajax调用更新你的问题,让我如何喜欢ajax对象,这样我就可以回答了谢谢你,请稍候,我发布答案:)让我们一起加入魔兽世界吧,非常感谢,先生:)
<script>
$(document).ready(function() {
$("#like").click(function(event){
        $.ajax({
             type:"POST",
             url:"{% url 'like' Obj.id %}",
             success: function(data){
                 confirm("liked")

             }
        });
        return false;
   });

});
</script>
url(r'like/obj/(?P<pk>[0-9]+)/', views.like, name="like"),
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def like(request, pk)
    obj = Obj.objects.get(id=pk)
    obj.likes += 1
    obj.save()
    return HttpResponse("liked")