diff -r 7e8cdc74d86f -r 043477fd5c5c src/notes/api/serializers/core.py --- a/src/notes/api/serializers/core.py Thu Jun 22 11:58:27 2017 +0200 +++ b/src/notes/api/serializers/core.py Thu Jun 22 12:09:48 2017 +0200 @@ -1,9 +1,12 @@ """ Serializers for model core classes """ +import logging + +from notes.models import Note, Session from rest_framework import serializers -from notes.models import Note, Session +logger = logging.getLogger(__name__) class DetailNoteSerializer(serializers.ModelSerializer): @@ -16,6 +19,22 @@ ) read_only_fields = ('ext_id', 'version', 'created', 'updated') +class CreateNoteSerializer(serializers.ModelSerializer): + class Meta: + model = Note + fields = ( + 'ext_id', 'version', 'created', 'updated', + 'plain', 'html', 'raw', + 'categorization', 'margin_note', 'tc_start', 'tc_end' + ) + read_only_fields = ('version', 'created', 'updated') + + def to_internal_value(self, data): + super_data = super().to_internal_value(data) + super_data['session'] = Session.objects.get( + ext_id=self.context['view'].kwargs['session_ext_id'] + ) + return super_data class ListNoteSerializer(serializers.ModelSerializer): class Meta: