Django and ajax - Python
Формулировка задачи:
Пытаюсь изучать ajax на примере магазина написанного на django, реализовываю асинхронное добавление товара в корзину.
Код шаблона:
Код ajax-функции:
Код представления:
Код ошибки:
Как я понял из описания ошибки он не выходит из рекурсии, но я никак не могу понять где именно я не прав.
Листинг программы
- {% for product in products %}
- <div class="col-sm-4">
- <div class="product">
- <div class="product-img">
- <a href="#"><img src="/media/{{ product.img }}" alt=""></a>
- </div>
- <p class="product-title">
- <a href="#">{{ product.name }}</a>
- </p>
- <p class="product-desc">{{ product.description }}</p>
- <p class="product-price">{{ product.price }} Р</p>
- <form method="post" action="{% url "cart:addj" %}" class="form-inline product-form" id="submit_btn" data-productid="{{ product.id }}">
- {% csrf_token %}
- <div class="form-group">
- {{ cart_product_form.quantity }}
- {{ cart_product_form.update }}
- <input class="btn btn-danger form-control" type="submit" value="В корзину" >
- </div>
- </form>
- </div>
- </div>
- {% endfor %}
Листинг программы
- $("#submit_btn").submit( function (e) {
- e.preventDefault();
- var pr_id = $(this).attr("data-productid");
- var url = $(this).attr("action")
- console.log(pr_id);
- console.log($(this).serialize());
- $.ajax({
- type: 'POST',
- url: url,
- data: {
- product_id: pr_id,
- csrfmiddlewaretoken: $('input[name=csrfmiddlewaretoken]'),
- },
- dataType: 'json',
- sucess: function () {
- alert("aye");
- }
- });
- });
Листинг программы
- def AnotherAdd(request):
- if request.method == 'POST':
- product_id = request.POST['product_id']
- cart = Cart(request)
- product = Product.objects.get( id = product_id)
- form = CartAddProductForm(request.POST)
- if form.is_valid():
- cd = form.cleaned_data
- cart.add(product=product, quantity=cd['quantity'],
- update_quantity=cd['update'])
- return HttpResponse('ok', content_type='text/html')
- else:
- return HttpResponse('neok', content_type='text/html')
Листинг программы
- jquery.min.js:4 Uncaught RangeError: Maximum call stack size exceeded
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
- at dc (jquery.min.js:4)
Решение задачи: «Django and ajax»
textual
Листинг программы
- sucess: function () {
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д