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

Здравствуйте. Вопрос по атомарным транзакциям. Пытался применить их в представлении по

синтаксису
with transaction.atomic():
form = ProjectForm(request.POST)
if form.is_valid():
project = form.save()
выводит виводить ValueError at /projects/create/
The view tasks.views.view didn't return an HttpResponse object. It returned None instead.
Если использовать синтаксис
form = ProjectForm(request.POST)
if form.is_valid():
with transaction.atomic():
project = form.save()

тогда никакого эффекта нет – транзакция не откатывается.
В чем проблема и как правильно использовать этот менеджер для того, чтобы происходили транзакции по атомарному принципу?

24 ответов

45 просмотров

Хохлам смерть

Так ошибка связана не с транзакцией…

🇺🇦 Ruslan-Kazmiryk 🇺🇦 Автор вопроса
rasput
Так ошибка связана не с транзакцией…

если говорить о том что не возрващает HttpResponse там рекомендовалось просто переставить atomic manager над формой валидации для корректной работы

Это что за фреймвок вообще? Транзакции не бывают НЕатомарными

Ну ошибка видимо произошла после коммита транзакции

🇺🇦 Ruslan-Kazmiryk 🇺🇦 Автор вопроса

а в чём суть ошибки? как исправить?

🇺🇦 Ruslan Kazmiryk 🇺🇦
а в чём суть ошибки? как исправить?

У тебя вьюха ничего не вернула похоже

🇺🇦 Ruslan-Kazmiryk 🇺🇦 Автор вопроса
Tishka17
У тебя вьюха ничего не вернула похоже

контекст пустой? Это имеется ввиду?

🇺🇦 Ruslan-Kazmiryk 🇺🇦 Автор вопроса
Tishka17
У тебя вьюха ничего не вернула похоже

не вернула, потому что откат произошёл и ничего не сохранилось. Тогда получается замкнутый круг - если применить atomic manager, то представление не будет ничего возвращать, а если не применять, в случае невалидности формы обьект всё равно создастся

🇺🇦 Ruslan Kazmiryk 🇺🇦
не вернула, потому что откат произошёл и ничего не...

Не вижу чтобы произошел откат и "ничего не сохранилось". С чего ты это взял?

🇺🇦 Ruslan-Kazmiryk 🇺🇦 Автор вопроса
Tishka17
Не вижу чтобы произошел откат и "ничего не сохрани...

The view tasks.views.view didn't return an HttpResponse object. It returned None instead. - при таком ответе

🇺🇦 Ruslan Kazmiryk 🇺🇦
The view tasks.views.view didn't return an HttpRes...

Задай вопрос в группе по джанго лучше: https://t.me/pydjango А так, по ошибке у тебя вьюха ничего не возвращает

Alexander (Wolf)
Задай вопрос в группе по джанго лучше: https://t.m...

А толку... Чтобы что-то внятно ответили, вопрос должен быть осмысленный.

🇺🇦 Ruslan-Kazmiryk 🇺🇦 Автор вопроса

https://pastebin.com/hKCQzVzg

🇺🇦 Ruslan Kazmiryk 🇺🇦
https://pastebin.com/hKCQzVzg

1. Включи подсветку синтаксиса 2. Разбей на части, это же пипец портянка

🇺🇦 Ruslan Kazmiryk 🇺🇦
https://pastebin.com/hKCQzVzg

В функции не должно быть больше 3 уровней отступов. Сделаешь - приноси

🇺🇦 Ruslan Kazmiryk 🇺🇦
https://pastebin.com/hKCQzVzg

Если функция проверяет тип метода - оставь в ней только общую часть, остально вынеси в доп функции.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта