Private
Public Access
1
0

testing api

This commit is contained in:
Sander Roosendaal
2016-11-26 17:41:08 +01:00
parent aed20dc816
commit 0facd70ac1
3 changed files with 64 additions and 11 deletions

View File

@@ -1,6 +1,8 @@
from rest_framework import serializers
from rowers.models import Workout,Rower
import datetime
# Serializers define the API representation.
class RowerSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
@@ -18,7 +20,7 @@ class RowerSerializer(serializers.HyperlinkedModelSerializer):
)
class WorkoutSerializer(serializers.HyperlinkedModelSerializer):
class WorkoutSerializer(serializers.ModelSerializer):
class Meta:
model = Workout
fields = (
@@ -26,21 +28,69 @@ class WorkoutSerializer(serializers.HyperlinkedModelSerializer):
'name',
'date',
'workouttype',
'boattype',
'starttime',
'startdatetime',
'distance',
'duration',
'weightcategory',
'weightvalue',
'averagehr',
'maxhr',
'notes',
'summary',
'csvfilename',
)
class StrokeDataSerielizer(serializers.Serializer):
def create(self, validated_data):
r = Rower.objects.get(user=self.context['request'].user)
d = validated_data['date']
t = validated_data['starttime']
rowdatetime = datetime.datetime(d.year,
d.month,
d.day,
t.hour,
t.minute,
t.second)
w = Workout(user=r,
name=validated_data['name'],
date=validated_data['date'],
workouttype=validated_data['workouttype'],
duration=validated_data['duration'],
distance=validated_data['distance'],
weightcategory=r.weightcategory,
starttime=validated_data['starttime'],
csvfilename='',
notes=validated_data['notes'],
uploadedtoc2=0,
summary=validated_data['summary'],
averagehr=validated_data['averagehr'],
maxhr=validated_data['maxhr'],
startdatetime=rowdatetime)
w.save()
return w
def update(self, instance, validated_data):
d = validated_data['date']
t = validated_data['starttime']
rowdatetime = datetime.datetime(d.year,
d.month,
d.day,
t.hour,
t.minute,
t.second)
instance.name=validated_data['name']
instance.date=validated_data['date']
instance.workouttype=validated_data['workouttype']
instance.duration=validated_data['duration']
instance.distance=validated_data['distance']
instance.starttime=validated_data['starttime']
instance.notes=validated_data['notes']
instance.summary=validated_data['summary']
instance.averagehr=validated_data['averagehr']
instance.maxhr=validated_data['maxhr']
instance.startdatetime=rowdatetime
instance.save()
return instance
class StrokeDataSerializer(serializers.Serializer):
workoutid = serializers.IntegerField
strokedata = serializers.JSONField