diff options
| author | Pablo Recio | 2013-05-18 15:01:58 +0200 | 
|---|---|---|
| committer | Pablo Recio | 2013-05-18 15:01:58 +0200 | 
| commit | 392c8556aed41df2120623fe1c891610bb111100 (patch) | |
| tree | 44158ef02a3a417fbc5a3400728da936fd76428b /rest_framework/relations.py | |
| parent | a0e3c44c99a61a6dc878308bdf0890fbb10c41e4 (diff) | |
| download | django-rest-framework-392c8556aed41df2120623fe1c891610bb111100.tar.bz2 | |
Display an empty label into related fields if it isn't required
Diffstat (limited to 'rest_framework/relations.py')
| -rw-r--r-- | rest_framework/relations.py | 8 | 
1 files changed, 7 insertions, 1 deletions
| diff --git a/rest_framework/relations.py b/rest_framework/relations.py index 884b954c..3aaf6648 100644 --- a/rest_framework/relations.py +++ b/rest_framework/relations.py @@ -8,6 +8,7 @@ from __future__ import unicode_literals  from django.core.exceptions import ObjectDoesNotExist, ValidationError  from django.core.urlresolvers import resolve, get_script_prefix, NoReverseMatch  from django import forms +from django.db.models.fields import BLANK_CHOICE_DASH  from django.forms import widgets  from django.forms.models import ModelChoiceIterator  from django.utils.translation import ugettext_lazy as _ @@ -47,7 +48,7 @@ class RelatedField(WritableField):                            DeprecationWarning, stacklevel=2)              kwargs['required'] = not kwargs.pop('null') -        self.queryset = kwargs.pop('queryset', None) +        queryset = kwargs.pop('queryset', None)          self.many = kwargs.pop('many', self.many)          if self.many:              self.widget = self.many_widget @@ -56,6 +57,11 @@ class RelatedField(WritableField):          kwargs['read_only'] = kwargs.pop('read_only', self.read_only)          super(RelatedField, self).__init__(*args, **kwargs) +        if not self.required: +            self.empty_label = BLANK_CHOICE_DASH[0][1] + +        self.queryset = queryset +      def initialize(self, parent, field_name):          super(RelatedField, self).initialize(parent, field_name)          if self.queryset is None and not self.read_only: | 
