diff --git a/friend/admin.py b/friend/admin.py index 8c38f3f..a169040 100644 --- a/friend/admin.py +++ b/friend/admin.py @@ -1,3 +1,6 @@ from django.contrib import admin # Register your models here. +from .models import Friends + +admin.site.register(Friends) \ No newline at end of file diff --git a/friend/models.py b/friend/models.py index 71a8362..fb88da0 100644 --- a/friend/models.py +++ b/friend/models.py @@ -1,3 +1,9 @@ +import email from django.db import models +from account.models import User # Create your models here. +class Friends(models.Model): + myId = models.ForeignKey(User, on_delete=models.CASCADE) + friendId = models.EmailField() + count = models.IntegerField() \ No newline at end of file diff --git a/friend/serializer.py b/friend/serializer.py new file mode 100644 index 0000000..3f191a4 --- /dev/null +++ b/friend/serializer.py @@ -0,0 +1,17 @@ +from rest_framework import serializers +from mypage.models import Plan + +#친구의 약속목록을 모두 가져옵니다. +class friendsPlanSerializer(serializers.ModelSerializer): + is_mine = serializers.SerializerMethodField() + + class Meta: + model = Plan + fields = ('id','isDone','title','promise_time','is_mine') + + def get_is_mine(self, obj): + + if obj.user == self.context['request'].user: + return True + else: + return False \ No newline at end of file diff --git a/friend/urls.py b/friend/urls.py new file mode 100644 index 0000000..deefb07 --- /dev/null +++ b/friend/urls.py @@ -0,0 +1,8 @@ +from django.urls import path +from mypage import views +from django.views.decorators.csrf import csrf_exempt +from friend.views import listPlans +from friend import views +urlpatterns = [ + path('plan', views.listPlans.as_view()), +] \ No newline at end of file diff --git a/friend/views.py b/friend/views.py index 91ea44a..1da0af8 100644 --- a/friend/views.py +++ b/friend/views.py @@ -1,3 +1,24 @@ from django.shortcuts import render -# Create your views here. +from mypage.models import Plan +from rest_framework.response import Response +from .serializer import friendsPlanSerializer +from rest_framework import generics + +#- 친구의 약속목록을 모두 가져옵니다 +# - parameter { +# friend-id :Int 친구의 아이디, +# present_time: 오늘 날짜 +# } + +class listPlans(generics.ListCreateAPIView): + def get(self, request): + # friendId = request.GET.get('friend-id', None) + # presentTime = request.GET.get('present_time', None) + friendId = request.data['friend-id'] + presentTime = request.data['present_time'] + #GET 요청의 파라미터로 friend-id와 present_time 받음 + #해당 friend-id를 가진 사용자의 약속 중 present_time 후에 있는 약속 목록을 가져옴 + queryset = Plan.objects.filter(user_id=friendId, promise_time__gte=int(presentTime)) + serializer_class = friendsPlanSerializer(queryset, context={'request': request}, many=True) + return Response(serializer_class.data, status=201) \ No newline at end of file