diff options
| author | Tom Christie | 2012-10-03 12:16:30 +0100 | 
|---|---|---|
| committer | Tom Christie | 2012-10-03 12:16:30 +0100 | 
| commit | 58c1263267e5947f8243568edb33273effdc2787 (patch) | |
| tree | e6c6d0c213d05e32240eabe07f408ab672514781 /rest_framework/fields.py | |
| parent | cab3b2f3f8f82087cf162dd7c62f18e9d8bb208a (diff) | |
| download | django-rest-framework-58c1263267e5947f8243568edb33273effdc2787.tar.bz2 | |
Use either PrimaryKeyRelatedField or ManyPrimaryKeyRelatedField as appropriate (fixes test)
Diffstat (limited to 'rest_framework/fields.py')
| -rw-r--r-- | rest_framework/fields.py | 12 | 
1 files changed, 6 insertions, 6 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 7cb2950c..b51d70a8 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -221,13 +221,13 @@ class PrimaryKeyRelatedField(RelatedField):      def field_to_native(self, obj, field_name):          try: -            obj = obj.serializable_value(self.source or field_name) +            pk = obj.serializable_value(self.source or field_name)          except AttributeError:              # RelatedObject (reverse relationship)              obj = getattr(obj, self.source or field_name)              return self.to_native(obj.pk)          # Forward relationship -        return self.to_native(obj) +        return self.to_native(pk)      def field_from_native(self, data, field_name, into):          value = data.get(field_name) @@ -237,13 +237,13 @@ class PrimaryKeyRelatedField(RelatedField):  class ManyPrimaryKeyRelatedField(PrimaryKeyRelatedField):      def field_to_native(self, obj, field_name):          try: -            obj = obj.serializable_value(self.source or field_name) +            queryset = obj.serializable_value(self.source or field_name)          except AttributeError:              # RelatedManager (reverse relationship) -            obj = getattr(obj, self.source or field_name) -            return [self.to_native(item.pk) for item in obj.all()] +            queryset = getattr(obj, self.source or field_name) +            return [self.to_native(item.pk) for item in queryset.all()]          # Forward relationship -        return [self.to_native(item.pk) for item in obj.all()] +        return [self.to_native(item.pk) for item in queryset.all()]      def field_from_native(self, data, field_name, into):          try:  | 
