Пример #1
0
    def create(self, request, **kwargs):
        serializer = AddMemberSerializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        id = request.user
        adder = User.objects.get(username=id)
        semester = get_semester_of_date(datetime.datetime.now())
        lifetime = serializer.data["lifetime"]
        try:
            user = User.objects.get(email=serializer.data["email"])
        except Exception:
            user = None
        member = Member(
            seller=adder,
            last_edited_by=adder,
            semester=semester,
            name=serializer.data["name"],
            lifetime=serializer.data["lifetime"],
            email=serializer.data["email"],
            honorary=False,
        )
        if "uio_username" in serializer.data:
            member.uio_username = serializer.data["uio_username"]
        if user is not None:
            member.user = user
        if lifetime:
            member.date_lifetime = timezone.now()

        member.save()

        return Response(MemberSerializer(member).data, status=status.HTTP_201_CREATED)