Я пытаюсь отправить данные в модель, используя 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)