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
9e29c638
Commit
9e29c638
authored
Oct 10, 2013
by
Tom Christie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Ensure read-only fields don't break with current HTML renderer behavior
parent
8d4ba478
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
21 additions
and
2 deletions
+21
-2
rest_framework/fields.py
+3
-0
rest_framework/serializers.py
+2
-0
rest_framework/tests/test_serializer.py
+1
-2
rest_framework/tests/test_serializer_empty.py
+15
-0
No files found.
rest_framework/fields.py
View file @
9e29c638
...
@@ -777,6 +777,7 @@ class IntegerField(WritableField):
...
@@ -777,6 +777,7 @@ class IntegerField(WritableField):
type_name
=
'IntegerField'
type_name
=
'IntegerField'
type_label
=
'integer'
type_label
=
'integer'
form_field_class
=
forms
.
IntegerField
form_field_class
=
forms
.
IntegerField
empty
=
0
default_error_messages
=
{
default_error_messages
=
{
'invalid'
:
_
(
'Enter a whole number.'
),
'invalid'
:
_
(
'Enter a whole number.'
),
...
@@ -808,6 +809,7 @@ class FloatField(WritableField):
...
@@ -808,6 +809,7 @@ class FloatField(WritableField):
type_name
=
'FloatField'
type_name
=
'FloatField'
type_label
=
'float'
type_label
=
'float'
form_field_class
=
forms
.
FloatField
form_field_class
=
forms
.
FloatField
empty
=
0
default_error_messages
=
{
default_error_messages
=
{
'invalid'
:
_
(
"'
%
s' value must be a float."
),
'invalid'
:
_
(
"'
%
s' value must be a float."
),
...
@@ -828,6 +830,7 @@ class DecimalField(WritableField):
...
@@ -828,6 +830,7 @@ class DecimalField(WritableField):
type_name
=
'DecimalField'
type_name
=
'DecimalField'
type_label
=
'decimal'
type_label
=
'decimal'
form_field_class
=
forms
.
DecimalField
form_field_class
=
forms
.
DecimalField
empty
=
Decimal
(
'0'
)
default_error_messages
=
{
default_error_messages
=
{
'invalid'
:
_
(
'Enter a number.'
),
'invalid'
:
_
(
'Enter a number.'
),
...
...
rest_framework/serializers.py
View file @
9e29c638
...
@@ -310,6 +310,8 @@ class BaseSerializer(WritableField):
...
@@ -310,6 +310,8 @@ class BaseSerializer(WritableField):
ret
.
fields
=
self
.
_dict_class
()
ret
.
fields
=
self
.
_dict_class
()
for
field_name
,
field
in
self
.
fields
.
items
():
for
field_name
,
field
in
self
.
fields
.
items
():
if
field
.
read_only
and
obj
is
None
:
continue
field
.
initialize
(
parent
=
self
,
field_name
=
field_name
)
field
.
initialize
(
parent
=
self
,
field_name
=
field_name
)
key
=
self
.
get_field_key
(
field_name
)
key
=
self
.
get_field_key
(
field_name
)
value
=
field
.
field_to_native
(
obj
,
field_name
)
value
=
field
.
field_to_native
(
obj
,
field_name
)
...
...
rest_framework/tests/test_serializer.py
View file @
9e29c638
...
@@ -159,8 +159,7 @@ class BasicTests(TestCase):
...
@@ -159,8 +159,7 @@ class BasicTests(TestCase):
expected
=
{
expected
=
{
'email'
:
''
,
'email'
:
''
,
'content'
:
''
,
'content'
:
''
,
'created'
:
None
,
'created'
:
None
'sub_comment'
:
''
}
}
self
.
assertEqual
(
serializer
.
data
,
expected
)
self
.
assertEqual
(
serializer
.
data
,
expected
)
...
...
rest_framework/tests/test_serializer_empty.py
0 → 100644
View file @
9e29c638
from
django.test
import
TestCase
from
rest_framework
import
serializers
class
EmptySerializerTestCase
(
TestCase
):
def
test_empty_serializer
(
self
):
class
FooBarSerializer
(
serializers
.
Serializer
):
foo
=
serializers
.
IntegerField
()
bar
=
serializers
.
SerializerMethodField
(
'get_bar'
)
def
get_bar
(
self
,
obj
):
return
'bar'
serializer
=
FooBarSerializer
()
self
.
assertEquals
(
serializer
.
data
,
{
'foo'
:
0
})
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