Современный лучший подход к использованию Django ORM с async?

Мир async Django быстро меняется, и трудно сказать, что в нем актуально, а что устарело.

Итак, каков текущий наилучший подход к использованию Django ORM (или, возможно, другого ORM) для наилучшей/наилучшей возможности async? Что люди успешно используют сегодня?

Множество рекомендаций, включая:

Одна проблема, с которой я столкнулся, заключается в том, что независимо от того, что я пытаюсь сделать, я сталкиваюсь с проблемой "django.db.utils.OperationalError: database "test_djangoasyncproj" is being accessed by other users"

Думаю, вам следует следовать документации https://docs.djangoproject.com/en/4.0/topics/async/#asgiref.sync.sync_to_async https://docs.djangoproject.com/en/4.0/topics/async/#async-views

from asgiref.sync import sync_to_async

results = await sync_to_async(Blog.objects.get, thread_sensitive=True)(pk=123)

или

from asgiref.sync import sync_to_async

def _get_blog(pk):
    return Blog.objects.select_related('author').get(pk=pk)

get_blog = sync_to_async(_get_blog, thread_sensitive=True)
Вернуться на верх