mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Fixed #25050 -- Allowed serialization of models with deferred fields.
This commit is contained in:
committed by
Tim Graham
parent
7edd912cfb
commit
c6cce4de38
@@ -37,7 +37,8 @@ class Serializer(base.Serializer):
|
||||
self._current = None
|
||||
|
||||
def get_dump_object(self, obj):
|
||||
data = OrderedDict([('model', force_text(obj._meta))])
|
||||
model = obj._meta.proxy_for_model if obj._deferred else obj.__class__
|
||||
data = OrderedDict([('model', force_text(model._meta))])
|
||||
if not self.use_natural_primary_keys or not hasattr(obj, 'natural_key'):
|
||||
data["pk"] = force_text(obj._get_pk_val(), strings_only=True)
|
||||
data['fields'] = self._current
|
||||
|
||||
@@ -52,7 +52,8 @@ class Serializer(base.Serializer):
|
||||
raise base.SerializationError("Non-model object (%s) encountered during serialization" % type(obj))
|
||||
|
||||
self.indent(1)
|
||||
attrs = OrderedDict([("model", smart_text(obj._meta))])
|
||||
model = obj._meta.proxy_for_model if obj._deferred else obj.__class__
|
||||
attrs = OrderedDict([("model", smart_text(model._meta))])
|
||||
if not self.use_natural_primary_keys or not hasattr(obj, 'natural_key'):
|
||||
obj_pk = obj._get_pk_val()
|
||||
if obj_pk is not None:
|
||||
|
||||
Reference in New Issue
Block a user