Я пытаюсь преобразовать синхронную служебную функцию (create_email_record) в асинхронную. функция внутри метода формы.
Я минимизирую код для лучшего понимания. Мой метод формы (begin_processing) содержит достаточное количество логики.
Код: Выделить всё
def create_email_record(submission):
print("-----CREATE EMAIL RECORD-------")
creation = EmailRecord.objects.create()
class Form(forms.Form):
comments = forms.TextArea()
def begin_processing():
submission = Submission.objects.get(id=1)
print("----------BEGIN ASYNC--------")
create_email_notification = sync_to_async(create_email_record)(submission)
asyncio.run(create_email_notification)
print("----------END ASYNC----------")
("----------BEGIN ASYNC- -------")
("----------END ASYNC----------")
("-----СОЗДАТЬ ЗАПИСЬ ЭЛЕКТРОННОЙ ПОЧТЫ-------")
Я получаю следующее:
("----------НАЧАТЬ АСИНХР.--------")
("-----СОЗДАТЬ ЗАПИСЬ ЭЛЕКТРОННОЙ ПОЧТЫ ------- ")
("----------END ASYNC----------")
Мой объект создается и, кажется, работает, но я не верю, что моя преобразованная функция sync_to_async преобразуется/вызывается правильно.
Возможно, у меня возникли проблемы с пониманием, но что Я хочу вызвать асинхронную функцию из синхронной функции/метода. Я много читал о других публикациях и онлайн-ресурсах, но, похоже, ни один из них не соответствует тому, что я хочу сделать. Я не видел, чтобы это делалось внутри метода формы.
Подробнее здесь: https://stackoverflow.com/questions/787 ... -in-django