Мой запрос Ajax выдает ошибку в django, как мне найти, что это такое? - PullRequest
2 голосов
/ 06 июля 2011

Как получить дополнительную информацию об ошибках в моих Ajax-запросах?

Когда ошибка возникает в Django во время обычного HTTP-запроса , Django показывает страницу с описательной ошибкой с подробной информацией об исключении.

Однако, когда ошибка возникает во время AJAX-запроса , я просто знаю код ошибки HTTP и все.Я хотел бы знать столько подробностей , сколько узнаю на странице ошибок Django.

Ответы [ 4 ]

3 голосов
/ 19 августа 2011

Обрабатывайте ошибки в вашем ajax-запросе и используйте responseText, чтобы получить текст ответа и поместить его в пустой div, который вы создали для этого.

Например:

$.ajax({
        url:"{% yourView %}",
        dataType: 'json',
        success: function(jsonData){
            alert("Hooray!");
        },
        error: function(jqXHR, textStatus, errorThrown){
            $('.errors_div').html(jqXHR.responseText);
        }
    });

Страница ошибки django будет преобразована в div class = errors_div

1 голос
/ 06 июля 2011

Журнал ошибок вашего веб-сервера будет содержать дополнительную информацию о любых необработанных исключениях.

0 голосов
/ 06 июля 2011

Почему бы не получить доступ к URL-адресу непосредственно в адресной строке вашего браузера, чтобы увидеть нормальную трассировку?

Оберните его в другом виде, чтобы изменить тип MIME на text / html.

Я такжечасто есть представление, которое оборачивает вывод JSON в тег html, поэтому панель инструментов отладки Django работает правильно.

0 голосов
/ 06 июля 2011

Использование Firebug . В консоли вы увидите запрос AJAX, просто щелкните правой кнопкой мыши -> Копировать содержимое ответа и сохраните его в виде файла HTML.

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