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

Народ Здравствуйте. Подскажите пожалуйста есть ли в Джанго какая-то возможность

вызвать функцию перед завершением работы. Ну например нажал ctr+c он перед тем как остановился, вызвал нужную функцию?

16 ответов

12 просмотров

исключение...

при чем тут это?

ctrl + c вызывает exception keyBoardinterrupt продолжать?)

Саша- Автор вопроса

Это не подходит.

Саша- Автор вопроса

Ну а как это реализовать? Какую часть когда обернуть в try, except? И как-то это наверное не правильно в Джанго же должны быть какие-то сигналы к которым можно подключить вызов определенных функций

Каких функций?..

о каких сигналах ты говоришь?, у тебя же приложение остановилось оберни в декоратор, как предлагал @Nire1 чтобы красиво было

Саша- Автор вопроса

Что обернуть в декоратор, понять не могу.

try except keyboardinterrupt

примерно вот так https://progi.pro/python-decoratorwrapper-dlya-operatora-tryexcept-10034299 декоратор, который выполняет функцию, либо в случае KeyboardInterrupt делает что-то другое, а потом уже рэйзит KeyboardInterrupt

как-то раз предлагал такой декоратор написать, там было ловля множества эксепшнов, мне тогда сказали не надо так, ибо не ожидаемо

Саша- Автор вопроса

Это не то. Я нашел что-то подходящее server hooks в gunicorn осталось разобраться как это настроить.

прикольно, спасибо (не знал, что у гуникорна есть хуки) однако момент - на локалке обычно gunicorn не нужен

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
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
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта