Я пытался создать представление Django с async, но оно показывает ошибки SynchronousOnlyOperation

Я пытаюсь создать асинхронное представление django, которое получает код состояния с нескольких адресов.

Это мой views.py

async def get_page(session, url, urlMain):
    async with session.get(url) as response:
        st_code= await response.status
        return url, st_code, urlMain

async def create_search(request):
    form = SearchForm()
    if  request.method == 'POST':
        name = request.POST['name']

        tasks = []
        async with aiohttp.ClientSession() as session:
            for item in data:
                url = data[item]['url']
                urlMain =  data[item]['urlMain']
                tasks.append(get_page(session, url, urlMain))
            results = await asyncio.gather(*tasks)

        for url, st_code, urlMain in results:
            if st_code == 200:
                site_data = SearchResult(
                    url = urlMain,
                    sitename = item,
                )
                site_data.save()
                            
    context = {'form':form}
    return render(request, 'index.html', context )

При запуске django он показывает мне эту ошибку.

SynchronousOnlyOperation at /create-search/

You cannot call this from an async context - use a thread or sync_to_async.
Вернуться на верх