MinValueValidator on models.DateField causes TypeError · Issue #2369 · encode/django-rest-framework (original) (raw)

Create a model field like
date = models.DateField(validators=[MinValueValidator(datetime.date(1970,1,1))])

Reference the field in a serializer and modelviewset.

  File "/usr/local/lib/python2.7/dist-packages/django/template/response.py", line 105, in render
    self.content = self.rendered_content
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/response.py", line 59, in rendered_content
    ret = renderer.render(self.data, media_type, context)
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/renderers.py", line 733, in render
    context = self.get_context(data, accepted_media_type, renderer_context)
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/renderers.py", line 683, in get_context
    raw_data_post_form = self.get_raw_data_form(data, view, 'POST', request)
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/renderers.py", line 633, in get_raw_data_form
    content = renderer.render(serializer.data, accepted, context)
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/serializers.py", line 457, in data
    ret = super(Serializer, self).data
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/serializers.py", line 216, in data
    self._data = self.get_initial()
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/serializers.py", line 343, in get_initial
    for field in self.fields.values()
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/serializers.py", line 312, in fields
    for key, value in self.get_fields().items():
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/serializers.py", line 1044, in get_fields
    ret[field_name] = field_cls(**kwargs)
  File "/usr/local/lib/python2.7/dist-packages/rest_framework/fields.py", line 867, in __init__
    super(DateField, self).__init__(*args, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'min_value'

self in the last line is DateField(allow_null=True, min_value=datetime.date(1970, 1, 1), required=False)

As I understand it - the validator is a valid model field argument but it errors out with django rest framework. I'm using 3.0.2. Not sure if it's related to this somewhat vague issue Thanks!