aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/serializers.py
diff options
context:
space:
mode:
authorIan Foote2014-04-12 17:51:02 +0100
committerIan Foote2014-04-12 17:51:02 +0100
commit0a0e4f22e72badd1d8700a2b253cb27450a5319f (patch)
tree4f01c54f2ba688b87d39e5657e7f10b397ac7fd3 /rest_framework/serializers.py
parent93b9245b8714287a440023451ff7880a2f6e5b32 (diff)
downloaddjango-rest-framework-0a0e4f22e72badd1d8700a2b253cb27450a5319f.tar.bz2
Set GenericForeignKey fields on object before save
* A model with a required GenericForeignKey can be saved if the field is set
Diffstat (limited to 'rest_framework/serializers.py')
-rw-r--r--rest_framework/serializers.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py
index cb7539e0..1d6097ed 100644
--- a/rest_framework/serializers.py
+++ b/rest_framework/serializers.py
@@ -16,6 +16,7 @@ import datetime
import inspect
import types
from decimal import Decimal
+from django.contrib.contenttypes.generic import GenericForeignKey
from django.core.paginator import Page
from django.db import models
from django.forms import widgets
@@ -943,6 +944,8 @@ class ModelSerializer(Serializer):
# Forward m2m relations
for field in meta.many_to_many + meta.virtual_fields:
+ if isinstance(field, GenericForeignKey):
+ continue
if field.name in attrs:
m2m_data[field.name] = attrs.pop(field.name)