Exemplo n.º 1
0
def diets(req):
    """
    Get all diets, or create a new one
    """
    if req.method == 'GET':
        diets = Diet.objects.all()
        serializer = DietReadSerializer(diets, many=True)
        return Response(serializer.data)

    elif req.method == 'POST':
        serializer = DietSerializer(data=req.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemplo n.º 2
0
def myDiets(req):
    user = User.objects.get(id=req.user.id)
    if req.method == 'GET':
        serializer = DietReadSerializer(user.diet_set, many=True)
        return Response(serializer.data)
    if req.method == 'PUT':
        pass
    return Response()
Exemplo n.º 3
0
class UserReadSerializer(serializers.HyperlinkedModelSerializer):

    username = serializers.CharField(required=False, read_only=True)
    email = serializers.EmailField(
        validators=[UniqueValidator(queryset=User.objects.all())])
    diets = DietReadSerializer(source='diet_set', many=True)

    class Meta:
        model = User
        fields = ('email', 'username', 'password', 'first_name', 'last_name',
                  'diets')
Exemplo n.º 4
0
def diet(req, dietId):
    """
    Retrive, modify or delete single diet by id
    """
    try:
        diet = Diet.objects.get(id=dietId)
    except Diet.DoesNotExist:
        return Response(status=status.HTTP_404_NOT_FOUND)

    if req.method == 'GET':
        serializer = DietReadSerializer(diet)
        return Response(serializer.data)

    elif req.method == 'PUT':
        serializer = DietSerializer(diet, data=req.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data)
        else:
            return Response(serializer.errors,
                            status=status.HTTP_400_BAD_REQUEST)

    elif req.method == 'DELETE':
        diet.delete()
        return HttpResponse(status=status.HTTP_204_NO_CONTENT)
Exemplo n.º 5
0
def diet(req, dietId):
    """
    Retrive, modify or delete single diet by id
    """
    try:
        diet = Diet.objects.get(id=dietId)
    except Diet.DoesNotExist:
        return Response(status=status.HTTP_404_NOT_FOUND)

    if req.method == 'GET':
        serializer = DietReadSerializer(diet)
        return Response(serializer.data)

    elif req.method == 'PUT':
        serializer = DietSerializer(diet, data=req.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data)
        else:
            return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

    elif req.method == 'DELETE':
        diet.delete()
        return HttpResponse(status=status.HTTP_204_NO_CONTENT)
Exemplo n.º 6
0
def diets(req):
    """
    Get all diets, or create a new one
    """
    if req.method == 'GET':
        diets = Diet.objects.all()
        serializer = DietReadSerializer(diets, many=True)
        return Response(serializer.data)

    elif req.method == 'POST':
        serializer = DietSerializer(data=req.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Exemplo n.º 7
0
def getDetailedUser(id):
    userModelObj = User.objects.get(id=id)
    # serializer = UserReadSerializer(user)
    user = UserReadSerializer(userModelObj).data

    foods = Food.objects.filter(user=id)
    serializer = FoodPureSerializer(foods, many=True)
    data = serializer.data
    for food in data:
        FoodService.calculateRate(food)
    user['foods'] = data

    restaurants = Restaurant.objects.filter(user=id)
    serializer = RestaurantDetailSerializer(restaurants, many=True)
    data = serializer.data
    for restaurant in data:
        RestaurantService.calculateRate(restaurant)
    user['restaurants'] = data
    user['isServer'] = len(data) > 0

    serializer = DietReadSerializer(userModelObj.diet_set, many=True)
    user['diets'] = serializer.data

    foodComments = FoodComment.objects.filter(user=id)
    user['foodComments'] = FoodCommentPureSerializer(foodComments,
                                                     many=True).data
    foodRates = FoodRate.objects.filter(user=id)
    user['foodRates'] = FoodRatePureSerializer(foodRates, many=True).data
    restaurantComments = RestaurantComment.objects.filter(user=id)
    user['restaurantComments'] = RestaurantCommentPureSerializer(
        restaurantComments, many=True).data
    restaurantRates = RestaurantRate.objects.filter(user=id)
    user['restaurantRates'] = RestaurantRatePureSerializer(restaurantRates,
                                                           many=True).data

    return user