@ekzotika

В каком месте мне нужно передать request?

Пытаюсь при нажатии на кнопку активировать функцию, которая передаст данные в шаблон и откроет его.
Вот функция нажатия на кнопку:

function openForm() {

    const amount = select.value;

    $.ajax({
        url: '/create_order/',
        type: 'get',
        data: {'amount': amount},
        dataType: "json",
        xhrFields: {withCredentials: true},
        success: function (data) {
            if (data['content']) {
                $('body').append(data['content']);
                console.log(data['content'])
            }
        },
    });
}


urls.py
url(r'^create_order/', CreateOrder),

views.py
def CreateOrder(amount, request):
    count = amount.GET.dict()

    content = mark_safe(render_to_string(
        'form.html',
        {
            'amount': count['amount'],
        },
        request))


Вопрос в параметре request. Мне он нужен в последней строке, соответственно нужно его передать в функцию CreateOrder. Но так соответственно возникает ошибка
TypeError at /create_order/↵CreateOrder() missing 1 required positional argument: 'request'
. Подскажите, как мне передать request в функции openForm() или как это правильно сделать иначе?
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
В данном случае ваш запрос лежит в переменной amount

Просто вот так сделайте
def CreateOrder(request):
    count = request.GET.dict()

    content = mark_safe(render_to_string(
        'form.html',
        {
            'amount': count['amount'],
        },
        request))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы