LOADING
Daphneを起動しようとしたところ、AppRegistryNotReadyとエラーが出た件

解決策

get_asgi_application()を呼び出す前に、色々インポートしているのが原因でした。

自分の場合は、おそらくアプリ内のrouting.pyをget_asgi_application()の呼び出し前にimportしていたからだと思います。


以下のように整理しました。

import os
from channels.routing import ProtocolTypeRouter, URLRouter
from django.core.asgi import get_asgi_application

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'project.settings')
django_asgi_app = get_asgi_application()

from <django app> import routing
from ... import ...

application = ProtocolTypeRouter({
    "http": django_asgi_app,
    "websocket":AuthMiddlewareStack(
        URLRouter(
            routing.websocket_urlpatterns,
        )
    ),
})


参考

https://stackoverflow.com/questions/53683806/django-apps-arent-loaded-yet-when-using-asgi

favorite
chat_bubble 0
プロモーション