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

Привет всем! Хочется услышать экспертное видение на одну ситуацию) Пишу асинхронное

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

И настала проблема) Допустим в тех же сигналах на модели БД я не могу взять и просто вызвать асинхроную функцию, приходится использовать asyncio.run(). И с таким я в дальнейшем начал сталкиваться много где, т.е. вызывая через asyncio.run()

Это вообще нормальная практика такая? Мне очень уж не хочется переписывать под синхронный интерфейс, т.к. мне эта асинхронка нужна будет для другого приложения. Джангу я лишь подключил, чтобы была служебная админка

23 ответов

36 просмотров

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

Саша- Автор вопроса
Tishka17
Подключать джангу так себе затея. Джанга - специф...

Ну, если точнее, аиограм и джанга. Aiogram в себе использует полностью асинхронный интерфейс, и допустим через админку хочу боту установить вебхук, вот и приходится обращаться к асинхроному фетчеру) А этот же фетчер нужен и для бота

Саша- Автор вопроса
Саша
Ну, если точнее, аиограм и джанга. Aiogram в себе ...

Поэтому, сложновато как-то получилось связывать) Я думал джанга будет проще)

Tishka17
Подключать джангу так себе затея. Джанга - специф...

Видел пример из книги, как её в слой инфраструктуры впихивали и строили DI

Саша
Ну, если точнее, аиограм и джанга. Aiogram в себе ...

Если ты уже писал без джанги, то выкинь её

Саша- Автор вопроса
Tishka17
Если ты уже писал без джанги, то выкинь её

Ну тогда не будет готовой админки джанговской) Или придется посмотреть другие решения, не выбирать саму джангу

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

Джанги 😄 Ну кроме алхимии

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

У джанги же опять, готовая орм, что упрощает работу в разы

Саша
Джанги 😄 Ну кроме алхимии

Ты писал на aiogram без джанги, но юзал Django ORM?

Саша
У джанги же опять, готовая орм, что упрощает работ...

Алхимия — готовая ОРМ, не приваренная к джанге. ;-)

Саша- Автор вопроса
Tishka17
Ты писал на aiogram без джанги, но юзал Django ORM...

Бот в процессе разработки. Просто мне надо было служебную панель и в дальнейшем я планировал использовать ОРМ джанги. Пока вот остановился на создание бота в системе, на чём и начал ловить приколы

Читал про сигналы документацию? Версия какая?

Саша- Автор вопроса
Саша- Автор вопроса
Саша
4-ая джанга. Читал конечно)

на каких-то форумах писали про поддержку асинхронных функций, но глядя под капотом декоратора, он обращается с ней как с синхнронной функцией

Саша
4-ая джанга. Читал конечно)

Почитай может натолкнет на идеи. https://copyprogramming.com/howto/is-django-post-save-signal-asynchronous

Саша
4-ая джанга. Читал конечно)

И да есть ещё sync to async, on_commit внутри сигнала или запуск сигналом таски в очередь.

Саша
4-ая джанга. Читал конечно)

если тебе тупо нужна админка, в чем проблема запустить джангу и отьебаться от нее?) зачем тащить асинхронное приложение в джангу, сделай их раздельными джанго админка если очень упростить ui для бдшки ж просто

Саша- Автор вопроса
Ilya
если тебе тупо нужна админка, в чем проблема запус...

ну..., я хотел связать приложение с ОРМ джанговской + админка. В частности с ОРМ я увидел поддержку асинхронных вызовов asave и adelete вроде как, да и переписать через декоратор sync_to_async можно большинство функций. Поэтому, посчитал нормальной затеей это делать

Саша- Автор вопроса
Саша
ну..., я хотел связать приложение с ОРМ джанговско...

я вообще нашел какой-то сайт со всякими тулами для фастапи, можешь перейду на другой фрейм, пока не поздно) Рассмотрю там админки https://project-awesome.org/mjhea0/awesome-fastapi#admin

Саша
ну..., я хотел связать приложение с ОРМ джанговско...

ты наверное не очень понимаешь что делаешь и зачем

Саша
ну..., я хотел связать приложение с ОРМ джанговско...

Норм. С 5 версии ещё больше асинка будет

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

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

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
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
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта