Add the ability to add read_only_fields in bulk in serializer model

This commit is contained in:
Pavel Savchenko 2012-11-05 09:48:47 +02:00
parent 3e0319389a
commit bf8e67dfc2

View File

@ -73,6 +73,7 @@ class SerializerOptions(object):
self.depth = getattr(meta, 'depth', 0)
self.fields = getattr(meta, 'fields', ())
self.exclude = getattr(meta, 'exclude', ())
self.read_only_fields = getattr(meta, 'read_only_fields', ())
class BaseSerializer(Field):
@ -124,6 +125,9 @@ class BaseSerializer(Field):
# Add in the default fields
fields = self.default_fields(serialize, obj, data, nested)
for key, val in fields.items():
if key in self.opts.read_only_fields:
val.read_only = True
if key not in ret:
ret[key] = val