diff options
| author | Tom Christie | 2014-11-07 11:44:16 +0000 | 
|---|---|---|
| committer | Tom Christie | 2014-11-07 11:44:16 +0000 | 
| commit | eafb7e1e24c31f0a6795ef5b8ac52940569d5854 (patch) | |
| tree | d77342c688eb7dff640deeae116391f04cdfdf75 | |
| parent | a16a8a10a9204e574ad912eeced535d70a385b37 (diff) | |
| download | django-rest-framework-eafb7e1e24c31f0a6795ef5b8ac52940569d5854.tar.bz2 | |
ModelField fix. Closes #2018.
| -rw-r--r-- | rest_framework/fields.py | 6 | 
1 files changed, 5 insertions, 1 deletions
| diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 95cda2ce..4933d8db 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -1180,7 +1180,6 @@ class ModelField(Field):      def __init__(self, model_field, **kwargs):          self.model_field = model_field -        kwargs['source'] = '*'          # The `max_length` option is supported by Django's base `Field` class,          # so we'd better support it here.          max_length = kwargs.pop('max_length', None) @@ -1195,6 +1194,11 @@ class ModelField(Field):              return rel.to._meta.get_field(rel.field_name).to_python(data)          return self.model_field.to_python(data) +    def get_attribute(self, obj): +        # We pass the object instance onto `to_representation`, +        # not just the field attribute. +        return obj +      def to_representation(self, obj):          value = self.model_field._get_val_from_obj(obj)          if is_protected_type(value): | 
