170 похожих чатов

Как избежать тройной конвертации json-dict-json ? return JsonResponse(json.loads(user_form.errors.as_json()))

12 ответов

9 просмотров

можно просто без .as_json(), если не устраивает отсутствие кодов - есть метод get_json_data()

Dmitry-Kravchenko Автор вопроса

Мне как раз нужен json ответ на ajax запрос. Просто или смирится с тройной конвертацией, или сделать через HttpResponse(но тогда код будет не таким удобным для чтения, ведь весь ajax я реализую через JsonResponse). В идеале мне хотелось бы получить все ошибки в виде обычного словаря, чтобы JsonResponse его конвертировал сам

без .as_json() или с get_json_data() у тебя будет дикт который будет конвертироваться в джейсон только один раз же

Dmitry-Kravchenko Автор вопроса

Без as_json() он возвращает это: <ul class="errorlist"><li>password2<ul class="errorlist"><li>password_mismatch</li></ul></li><li>username<ul class="errorlist"><li>A user with that username already exists.</li></ul></li></ul> А если использовать as_data(), то значения словаря будут хранить объекты ошибок которые не конвертируются в json: {'password2': [ValidationError(['password_mismatch'])], 'username': [ValidationError(['A user with that username already exists.'])]}

JsonResponse отдает так с тегами? Когда последний раз проверял - так не было. С .get_json_data() попробовал?

Dmitry-Kravchenko Автор вопроса

нет, form.errors отдает ошибки с тегами

А перед формс эррор что? И на второй вопрос почему бы не ответить?

Dmitry-Kravchenko Автор вопроса

.get_json_data() это чья функция?

Эррорс

Dmitry-Kravchenko Автор вопроса

есть только .as_json()

Версия джанги какая?

Dmitry-Kravchenko Автор вопроса

А нет, все есть . Просто неправильно написал в первый раз. Все работает, спасибо огромное)))

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

Обсуждают сегодня

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
А табстоп это сообщение от окна или от элемента управления?
The Bird of Hermes
18
Открыл свой двухкилобайтный экзешник в x32dbg, а тут какая-то хрень. Смущает кнопка "выполнить до пользовательского кода", а что ещё может быть в файле помимо него ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
11
Вопрос тем кто смотрит видео и слушает подкасты - как вы потом ищете нужную вам информацию? Вот статью я прочитал, потом могу искать нужную мне часть банальным поиском. Пропус...
Aleksandr Druzhinin
4
Мне были интересны дишные хаки и я нашёл любопытный способ на форуме через __traits, что-то вроде int delegate(int) fac = (int n) => n == 0 ? 1 : n * __traits(parent, {})(n - ...
Constantin F.
1
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
@FAssembler ты много с формами работал, как цикл обработки сообщений от окошек надо делать, чтобы IsDialogMessage не ломал ввод в эдиты и навигация по табам работала?
The Bird of Hermes
8
Карта сайта