DJANGO: Как отправлять и получать данные из базы данных с помощью потребителей
У меня есть работающее приложение чата, сделанное на Django. Я хочу отправлять все последние сохраненные сообщения из каждой группы в одну единственную группу, где все они могут быть просмотрены. Пока я пытался сделать это для одной группы (General), но столкнулся с проблемами. Вот мой код:
Consumers.py - Вот первый потребитель для сообщений, который работает, и второй, где я пытался отправить и получить последнее сообщение из группы (General).
А вот JavaScript:
Routing.py
from django.urls import re_path
from . import consumers
websocket_urlpatterns = [
re_path(r'ws/chat/(?P<room_name>\w+)/$', consumers.ChatRoomConsumer.as_asgi()),
re_path(r'^ws/chat/$', consumers.MessagePreviewConsumer.as_asgi()),
]
Asgi.py
// ----- all the imports are there ----- //
application = ProtocolTypeRouter({
"websocket": AuthMiddlewareStack(
URLRouter([
re_path(r'ws/chat/(?P<room_name>\w+)/$', consumers.ChatRoomConsumer.as_asgi()),
re_path(r'^ws/chat/$', consumers.MessagePreviewConsumer.as_asgi()),
])
),
})
Итак, мой вопрос в том, как я могу передать последнее сохраненное сообщение из этой группы (и других) через веб-сокет, чтобы все они могли быть отображены в одной разделенной группе? При этом, конечно, чтобы это было "живое" сообщение, чтобы пользователю не приходилось обновлять страницу. Спасибо за ваши ответы.