--- a/src/p4l/api/serializers.py Mon Sep 23 00:38:16 2013 +0200
+++ b/src/p4l/api/serializers.py Wed Sep 25 22:14:51 2013 +0200
@@ -79,7 +79,8 @@
if value in (None, ''):
into[(self.source or field_name)] = None
elif self.many and hasattr(value, '__iter__'):
- obj.all().delete()
+ if obj is not None:
+ obj.all().delete()
nested_items = []
for val in value:
kwargs = {
@@ -118,19 +119,18 @@
Serializer for record
'''
language = ThesaurusSerializer(many=False, required=False, slug_field='uri')
- otherLanguages = ThesaurusSerializer(many=True, slug_field='uri')
- subjects = ThesaurusSerializer(many=True, slug_field='uri')
- themes = ThesaurusSerializer(many=True, slug_field='uri')
- countries = ThesaurusSerializer(many=True, slug_field='uri')
- projectNames = ThesaurusSerializer(many=True, slug_field='uri')
- subjectCorporateBodies = ThesaurusSerializer(many=True, slug_field='uri')
- corporateAuthors = ThesaurusSerializer(many=True, slug_field='uri')
- audiences = ThesaurusSerializer(many=True, slug_field='uri')
+ otherLanguages = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ subjects = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ themes = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ countries = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ projectNames = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ subjectCorporateBodies = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ corporateAuthors = ThesaurusSerializer(many=True, required=False, slug_field='uri')
+ audiences = ThesaurusSerializer(many=True, required=False, slug_field='uri')
class Meta:
model = Record
depth = 1
- read_only_fields = ('identifier', 'uri')
fields = ("identifier", "uri", "subjects", "notes", "otherLanguages",
"language", "editionStatement", "recordType", "isDocumentPart",
"hidden", "restricted", "themes", "countries", "projectNames",