daren/daren/asgi.py
2025-05-23 19:25:35 +08:00

37 lines
939 B
Python

"""
ASGI config for daren project.
"""
import os
import django
import pathlib
# 设置Django设置模块
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'daren.settings')
# 确保logs文件夹存在
BASE_DIR = pathlib.Path(__file__).resolve().parent.parent
logs_dir = os.path.join(BASE_DIR, 'logs')
if not os.path.exists(logs_dir):
os.makedirs(logs_dir)
django.setup() # 添加这一行
from django.core.asgi import get_asgi_application
from channels.routing import ProtocolTypeRouter, URLRouter
from channels.auth import AuthMiddlewareStack
# 确保在django.setup()之后再导入
import apps.brands.routing
import apps.chat.routing
application = ProtocolTypeRouter({
'http': get_asgi_application(),
'websocket': AuthMiddlewareStack(
URLRouter(
apps.brands.routing.websocket_urlpatterns +
apps.chat.routing.websocket_urlpatterns
)
),
})