from django.shortcuts import render 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, generics from rest_framework import permissions from .serializers import AppSerializer, RoomSerializer, MessageSerializer, UserSerializer from django.contrib.auth.models import User # Create your views here. def index(request): rooms = Room.objects.all() template = loader.get_template("chat/index.html") context = { "rooms": rooms, } return render(request, "chat/index.html", context) def room(request, room_id): room = get_object_or_404(Room, pk=room_id) context = { "room": room, "messages": room.message_set, } return render(request, "chat/room.html", context) class UserViewSet(viewsets.ModelViewSet): queryset = User.objects.all() serializer_class = UserSerializer class AppViewSet(viewsets.ModelViewSet): queryset = App.objects.all() serializer_class = AppSerializer class RoomViewSet(viewsets.ModelViewSet): queryset = Room.objects.all() serializer_class = RoomSerializer class MessageViewSet(viewsets.ModelViewSet): serializer_class = MessageSerializer def get_queryset(self): room_id = self.request.query_params.get('room_id') return Message.objects.filter(room=room_id)