From f2bbd8a1bfbc0ad8c8cdb7a138120ecbdcd65527 Mon Sep 17 00:00:00 2001 From: Laurent Date: Fri, 8 Dec 2023 16:18:20 +0100 Subject: [PATCH] Makes message service filtered by room id --- chat/views.py | 7 +++++-- enchant_server/urls.py | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/chat/views.py b/chat/views.py index cabfd52..1aea480 100644 --- a/chat/views.py +++ b/chat/views.py @@ -4,7 +4,7 @@ from django.http import HttpResponse from .models import App, Room, Message from django.shortcuts import get_object_or_404, render from django.template import loader -from rest_framework import viewsets +from rest_framework import viewsets, generics from rest_framework import permissions from .serializers import AppSerializer, RoomSerializer, MessageSerializer @@ -34,5 +34,8 @@ class RoomViewSet(viewsets.ModelViewSet): serializer_class = RoomSerializer class MessageViewSet(viewsets.ModelViewSet): - queryset = Message.objects.all() serializer_class = MessageSerializer + + def get_queryset(self): + room_id = self.request.query_params.get('room_id') + return Message.objects.filter(room=room_id) diff --git a/enchant_server/urls.py b/enchant_server/urls.py index 15f2446..d9b0b1a 100644 --- a/enchant_server/urls.py +++ b/enchant_server/urls.py @@ -22,7 +22,7 @@ from chat import views router = routers.DefaultRouter() router.register(r'apps', views.AppViewSet) router.register(r'rooms', views.RoomViewSet) -router.register(r'messages', views.MessageViewSet) +router.register(r'messages', views.MessageViewSet, basename='Message') urlpatterns = [ path("chat/", include("chat.urls")),