Files
web2.0-backend/webapp/serializers.py
T
2018-07-10 22:33:26 +03:00

43 lines
1.2 KiB
Python

from rest_framework import serializers
from webapp.models import *
class SignupFormSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SignupForm
fields = ('id', 'start', 'end', 'questions')
class EventSerializer(serializers.HyperlinkedModelSerializer):
signupForm = SignupFormSerializer(many=True, read_only=True, required=False)
signup_id = serializers.PrimaryKeyRelatedField(
many=True,
source="signupForm",
queryset=SignupForm.objects.all())
class Meta:
model = Event
fields = ('id', 'tags', 'visible', 'title', 'description',
'content', 'start_time', 'end_time', 'signup_id', 'signupForm')
depth = 1
def create(self, validated_data):
signupForms = validated_data.pop('signupForm')
event = Event.objects.create(**validated_data)
for signupForm in signupForms:
event.signupForm.add(signupForm)
event.save()
return event
class SignupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Signup
fields = ('id', 'signupForm', 'answer')
extra_kwargs = {
'url': {
'view_name': 'signup-detail',
}
}