Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
django-rest-framework
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
django-rest-framework
Commits
8ba2eb17
Commit
8ba2eb17
authored
Jun 23, 2017
by
John Eskew
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Avoid translation of error messages in field init with min/max value.
parent
83ee0f11
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
11 additions
and
21 deletions
+11
-21
rest_framework/fields.py
+10
-20
tests/test_bound_fields.py
+1
-1
No files found.
rest_framework/fields.py
View file @
8ba2eb17
...
@@ -738,11 +738,9 @@ class CharField(Field):
...
@@ -738,11 +738,9 @@ class CharField(Field):
self
.
min_length
=
kwargs
.
pop
(
'min_length'
,
None
)
self
.
min_length
=
kwargs
.
pop
(
'min_length'
,
None
)
super
(
CharField
,
self
)
.
__init__
(
**
kwargs
)
super
(
CharField
,
self
)
.
__init__
(
**
kwargs
)
if
self
.
max_length
is
not
None
:
if
self
.
max_length
is
not
None
:
message
=
self
.
error_messages
[
'max_length'
]
.
format
(
max_length
=
self
.
max_length
)
self
.
validators
.
append
(
MaxLengthValidator
(
self
.
max_length
))
self
.
validators
.
append
(
MaxLengthValidator
(
self
.
max_length
,
message
=
message
))
if
self
.
min_length
is
not
None
:
if
self
.
min_length
is
not
None
:
message
=
self
.
error_messages
[
'min_length'
]
.
format
(
min_length
=
self
.
min_length
)
self
.
validators
.
append
(
MinLengthValidator
(
self
.
min_length
))
self
.
validators
.
append
(
MinLengthValidator
(
self
.
min_length
,
message
=
message
))
def
run_validation
(
self
,
data
=
empty
):
def
run_validation
(
self
,
data
=
empty
):
# Test for the empty string here so that it does not get validated,
# Test for the empty string here so that it does not get validated,
...
@@ -893,11 +891,9 @@ class IntegerField(Field):
...
@@ -893,11 +891,9 @@ class IntegerField(Field):
self
.
min_value
=
kwargs
.
pop
(
'min_value'
,
None
)
self
.
min_value
=
kwargs
.
pop
(
'min_value'
,
None
)
super
(
IntegerField
,
self
)
.
__init__
(
**
kwargs
)
super
(
IntegerField
,
self
)
.
__init__
(
**
kwargs
)
if
self
.
max_value
is
not
None
:
if
self
.
max_value
is
not
None
:
message
=
self
.
error_messages
[
'max_value'
]
.
format
(
max_value
=
self
.
max_value
)
self
.
validators
.
append
(
MaxValueValidator
(
self
.
max_value
))
self
.
validators
.
append
(
MaxValueValidator
(
self
.
max_value
,
message
=
message
))
if
self
.
min_value
is
not
None
:
if
self
.
min_value
is
not
None
:
message
=
self
.
error_messages
[
'min_value'
]
.
format
(
min_value
=
self
.
min_value
)
self
.
validators
.
append
(
MinValueValidator
(
self
.
min_value
))
self
.
validators
.
append
(
MinValueValidator
(
self
.
min_value
,
message
=
message
))
def
to_internal_value
(
self
,
data
):
def
to_internal_value
(
self
,
data
):
if
isinstance
(
data
,
six
.
text_type
)
and
len
(
data
)
>
self
.
MAX_STRING_LENGTH
:
if
isinstance
(
data
,
six
.
text_type
)
and
len
(
data
)
>
self
.
MAX_STRING_LENGTH
:
...
@@ -927,11 +923,9 @@ class FloatField(Field):
...
@@ -927,11 +923,9 @@ class FloatField(Field):
self
.
min_value
=
kwargs
.
pop
(
'min_value'
,
None
)
self
.
min_value
=
kwargs
.
pop
(
'min_value'
,
None
)
super
(
FloatField
,
self
)
.
__init__
(
**
kwargs
)
super
(
FloatField
,
self
)
.
__init__
(
**
kwargs
)
if
self
.
max_value
is
not
None
:
if
self
.
max_value
is
not
None
:
message
=
self
.
error_messages
[
'max_value'
]
.
format
(
max_value
=
self
.
max_value
)
self
.
validators
.
append
(
MaxValueValidator
(
self
.
max_value
))
self
.
validators
.
append
(
MaxValueValidator
(
self
.
max_value
,
message
=
message
))
if
self
.
min_value
is
not
None
:
if
self
.
min_value
is
not
None
:
message
=
self
.
error_messages
[
'min_value'
]
.
format
(
min_value
=
self
.
min_value
)
self
.
validators
.
append
(
MinValueValidator
(
self
.
min_value
))
self
.
validators
.
append
(
MinValueValidator
(
self
.
min_value
,
message
=
message
))
def
to_internal_value
(
self
,
data
):
def
to_internal_value
(
self
,
data
):
...
@@ -980,11 +974,9 @@ class DecimalField(Field):
...
@@ -980,11 +974,9 @@ class DecimalField(Field):
super
(
DecimalField
,
self
)
.
__init__
(
**
kwargs
)
super
(
DecimalField
,
self
)
.
__init__
(
**
kwargs
)
if
self
.
max_value
is
not
None
:
if
self
.
max_value
is
not
None
:
message
=
self
.
error_messages
[
'max_value'
]
.
format
(
max_value
=
self
.
max_value
)
self
.
validators
.
append
(
MaxValueValidator
(
self
.
max_value
))
self
.
validators
.
append
(
MaxValueValidator
(
self
.
max_value
,
message
=
message
))
if
self
.
min_value
is
not
None
:
if
self
.
min_value
is
not
None
:
message
=
self
.
error_messages
[
'min_value'
]
.
format
(
min_value
=
self
.
min_value
)
self
.
validators
.
append
(
MinValueValidator
(
self
.
min_value
))
self
.
validators
.
append
(
MinValueValidator
(
self
.
min_value
,
message
=
message
))
def
to_internal_value
(
self
,
data
):
def
to_internal_value
(
self
,
data
):
"""
"""
...
@@ -1534,11 +1526,9 @@ class ListField(Field):
...
@@ -1534,11 +1526,9 @@ class ListField(Field):
super
(
ListField
,
self
)
.
__init__
(
*
args
,
**
kwargs
)
super
(
ListField
,
self
)
.
__init__
(
*
args
,
**
kwargs
)
self
.
child
.
bind
(
field_name
=
''
,
parent
=
self
)
self
.
child
.
bind
(
field_name
=
''
,
parent
=
self
)
if
self
.
max_length
is
not
None
:
if
self
.
max_length
is
not
None
:
message
=
self
.
error_messages
[
'max_length'
]
.
format
(
max_length
=
self
.
max_length
)
self
.
validators
.
append
(
MaxLengthValidator
(
self
.
max_length
))
self
.
validators
.
append
(
MaxLengthValidator
(
self
.
max_length
,
message
=
message
))
if
self
.
min_length
is
not
None
:
if
self
.
min_length
is
not
None
:
message
=
self
.
error_messages
[
'min_length'
]
.
format
(
min_length
=
self
.
min_length
)
self
.
validators
.
append
(
MinLengthValidator
(
self
.
min_length
))
self
.
validators
.
append
(
MinLengthValidator
(
self
.
min_length
,
message
=
message
))
def
get_value
(
self
,
dictionary
):
def
get_value
(
self
,
dictionary
):
if
self
.
field_name
not
in
dictionary
:
if
self
.
field_name
not
in
dictionary
:
...
...
tests/test_bound_fields.py
View file @
8ba2eb17
...
@@ -39,7 +39,7 @@ class TestSimpleBoundField:
...
@@ -39,7 +39,7 @@ class TestSimpleBoundField:
serializer
.
is_valid
()
serializer
.
is_valid
()
assert
serializer
[
'text'
]
.
value
==
'x'
*
1000
assert
serializer
[
'text'
]
.
value
==
'x'
*
1000
assert
serializer
[
'text'
]
.
errors
==
[
'Ensure this
field has no more than 100 characters
.'
]
assert
serializer
[
'text'
]
.
errors
==
[
'Ensure this
value has at most 100 characters (it has 1000)
.'
]
assert
serializer
[
'text'
]
.
name
==
'text'
assert
serializer
[
'text'
]
.
name
==
'text'
assert
serializer
[
'amount'
]
.
value
is
123
assert
serializer
[
'amount'
]
.
value
is
123
assert
serializer
[
'amount'
]
.
errors
is
None
assert
serializer
[
'amount'
]
.
errors
is
None
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment