django celery email 사용시 redis 쓰라고 해도 계속 amqp 시도하는 문제
분명히 이런 설정들을 써 주었는데 왜 계속 redis 대신 amqp 로 보내려다 실패하는 에러메시지가 뜨는 것인가?
CELERY_EMAIL_BROKER_URL = 'redis://localhost:6379/0'
CELERY_BROKER_URL = 'redis://127.0.0.1:6379/0'
chatgpt, claude 한테 물어봐도 좀 허우적댄다. 예전에 100su.life 설정할때 한번 삽질했던 것인데, 지금 onlytakus 프로토타입 만들면서 같은 문제를 한번 더 만났다. 아 이거 전에 그건데! 하는 생각과 함께 바로 dboard 로 가서 tig 띄워놓고 검색해서 찾았다.
celery.py 가 있는 디렉토리의 __init__.py 에
from .celery import app as celery_app
__all__ = ('celery_app',)
이것이 있어야 django 가 뜰 때 필요한 코드가 로드된다.
알고 나서 검색하니 금방 나온다. https://blog.knoldus.com/how-to-send-email-using-celery-in-django-application/ 누군가가 삽질한 기록에 적혀 있네.
Step3: We need to import this app in your project/__init__.py module. This ensures that the app is loaded when Django starts.