반응형
[비동기 async 함수에서 ORM 조회 안되는 경우 ]
Django: SynchronousOnlyOperation: You cannot call this from an async context - use a thread or sync_to_async
# 샘플코드
async def sync_function():
query = Models.objects.filter(status='사용').all()
return 'success'
해당 비동기 함수에서는 Django: SynchronousOnlyOperation: You cannot call this from an async context - use a thread or sync_to_async 에러가 발생할 거에요.
조회가 되지 않으면, UPDATE나 DELETE를 할 수 없습니다.
■ 해결방안
- settings.py 파일에 설정하기.
os.environ["DJANGO_ALLOW_ASYNC_UNSAFE"] = 'true'
os.environ["DJANGO_ALLOW_ASYNC_UNSAFE"] = 'true'
true는 True가 아닌 스트링 형식으로 'true'를 삽입해주면 됩니다.
해당 구문을 설정해두면 비동기 함수에서도 ORM 조회를 할 수 있습니다.
[비동기 async 함수에서 ORM 조회 안되는 경우 ]
Django: SynchronousOnlyOperation: You cannot call this from an async context - use a thread or sync_to_async
반응형
'파이썬 웹 개발' 카테고리의 다른 글
[Pywebview] webView:runJavaScriptConfirmPanelWithMessage (0) | 2022.09.20 |
---|---|
[Django] django.core.exceptions.improperlyconfigured 에러 해결 (0) | 2022.08.18 |
[Django] No module named 'googleapiclient' 설치 에러 해결 (0) | 2022.07.14 |
[Django] 파이썬 데이터시각화 & txt 업로드, 읽기, 키워드 분석 [1] (0) | 2022.06.02 |
[Django] 장고 ORM vs raw 성능 비교하기 (0) | 2022.05.25 |
댓글