aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/serializers.py
diff options
context:
space:
mode:
authorTom Christie2012-10-26 05:22:34 -0700
committerTom Christie2012-10-26 05:22:34 -0700
commit7cdedc0f71f362895b71c8075d5e853e9685a9f9 (patch)
tree360ba91c91577f09f8b7e3f3b24d8e80f689fc46 /rest_framework/serializers.py
parent365d20652eb7b56c9d1d4b63b52c056f03cab514 (diff)
parent67f1265e493adc35239d90aeb3bfeb8492fbd741 (diff)
downloaddjango-rest-framework-7cdedc0f71f362895b71c8075d5e853e9685a9f9.tar.bz2
Merge pull request #321 from tomchristie/pastebin_tutorial
Tweaks and fixes in order to support the pastebin tutorial
Diffstat (limited to 'rest_framework/serializers.py')
-rw-r--r--rest_framework/serializers.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py
index 8ee9a0ec..db6f9f61 100644
--- a/rest_framework/serializers.py
+++ b/rest_framework/serializers.py
@@ -3,6 +3,7 @@ import datetime
import types
from decimal import Decimal
from django.db import models
+from django.forms import widgets
from django.utils.datastructures import SortedDict
from rest_framework.compat import get_concrete_model
from rest_framework.fields import *
@@ -409,6 +410,15 @@ class ModelSerializer(Serializer):
kwargs = {}
if model_field.has_default():
kwargs['required'] = False
+ kwargs['default'] = model_field.get_default()
+
+ if model_field.__class__ == models.TextField:
+ kwargs['widget'] = widgets.Textarea
+
+ # TODO: TypedChoiceField?
+ if model_field.flatchoices: # This ModelField contains choices
+ kwargs['choices'] = model_field.flatchoices
+ return ChoiceField(**kwargs)
field_mapping = {
models.FloatField: FloatField,