AJAX отправка формы в Django Class View - PullRequest
0 голосов
/ 15 марта 2020

Я пытаюсь отправить данные в модель, используя Ajax, это дает 403 (Запрещено), представление, которое я использую, является представлением класса. Все отлично работает без Ajax. Как сделать то же самое с ajax?

Мой URL:

 path('add_to_cart/<slug>', views.AddToCartView.as_view(), name='add_to_cart'),

Мой просмотр:

class AddToCartView(LoginRequiredMixin, View):

     model = Wishlist

    @method_decorator(csrf_exempt)
    def get(self, request, *args, **kwargs):
        print(self.request.user)
        print(self.kwargs['slug'])
        wished_product = get_object_or_404(Product, slug=self.kwargs['slug'])
        product,created  = self.model.objects.get_or_create(product=wished_product,
                       customer = self.request.user)
    return HttpResponse(status=201)

и ajax вызов

  $('.buy').click(function(e){
        e.preventDefault();
        let _this = $(this);
        var slug = _this.data('id');

        $.ajax({
            type : 'POST',
            url : 'add_to_cart/'+ slug +'/',
            success: function(data){
                if(data.success = true){
                    _this.addClass('clicked');
                }
            },
            async : false,
            error : function(data){
                alert(data);
            }

        })

    });

Когда я использую 'POST' вместо 'GET' в Ajax типе выдает 404 (Not Found)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...