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
509c54de
Commit
509c54de
authored
Sep 24, 2015
by
Tom Christie
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #3435 from stianjensen/unique-error
Use model error_messages when available
parents
c28bc989
62c000bc
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
10 additions
and
2 deletions
+10
-2
rest_framework/utils/field_mapping.py
+9
-1
tests/test_validators.py
+1
-1
No files found.
rest_framework/utils/field_mapping.py
View file @
509c54de
...
@@ -193,7 +193,15 @@ def get_field_kwargs(field_name, model_field):
...
@@ -193,7 +193,15 @@ def get_field_kwargs(field_name, model_field):
]
]
if
getattr
(
model_field
,
'unique'
,
False
):
if
getattr
(
model_field
,
'unique'
,
False
):
validator
=
UniqueValidator
(
queryset
=
model_field
.
model
.
_default_manager
)
unique_error_message
=
model_field
.
error_messages
.
get
(
'unique'
,
None
)
if
unique_error_message
:
unique_error_message
=
unique_error_message
%
{
'model_name'
:
model_field
.
model
.
_meta
.
object_name
,
'field_label'
:
model_field
.
verbose_name
}
validator
=
UniqueValidator
(
queryset
=
model_field
.
model
.
_default_manager
,
message
=
unique_error_message
)
validator_kwarg
.
append
(
validator
)
validator_kwarg
.
append
(
validator
)
if
validator_kwarg
:
if
validator_kwarg
:
...
...
tests/test_validators.py
View file @
509c54de
...
@@ -48,7 +48,7 @@ class TestUniquenessValidation(TestCase):
...
@@ -48,7 +48,7 @@ class TestUniquenessValidation(TestCase):
data
=
{
'username'
:
'existing'
}
data
=
{
'username'
:
'existing'
}
serializer
=
UniquenessSerializer
(
data
=
data
)
serializer
=
UniquenessSerializer
(
data
=
data
)
assert
not
serializer
.
is_valid
()
assert
not
serializer
.
is_valid
()
assert
serializer
.
errors
==
{
'username'
:
[
'
This field must be unique
.'
]}
assert
serializer
.
errors
==
{
'username'
:
[
'
UniquenessModel with this username already exists
.'
]}
def
test_is_unique
(
self
):
def
test_is_unique
(
self
):
data
=
{
'username'
:
'other'
}
data
=
{
'username'
:
'other'
}
...
...
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