Django: нет доступа к базе данных из асинхронной функции
Я пишу тесты для своего Django-приложения с использованием asyncio и столкнулся с проблемой доступа к базе данных. Вот минимальный код, воспроизводящий ошибку:
import pytest
from authentication.models import User
@pytest.mark.django_db(transaction=True)
@pytest.mark.asyncio
class TestDatabaseAccess:
@pytest.fixture(autouse=True)
def _fixture(self):
User.objects.create(username='username')
async def test_main(self):
async def get_user_async(user_id):
user = await sync_to_async(User.objects.get)(id=user_id)
return user
await get_user_async(1)
Я получаю ошибку:
def execute(self, query, params=None):
if params is None:
return Database.Cursor.execute(self, query)
query = self.convert_query(query)
return Database.Cursor.execute(self, query, params)
E django.db.utils.OperationalError: no such table: authentication_customuser
Что я делаю не так?
Мой фикстур работает нормально и имеет доступ к базе данных, я могу вывести всех пользователей из формы. Но асинхронный тест выбрасывает ошибку.