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
47492e3e
Commit
47492e3e
authored
Mar 15, 2013
by
Tom Christie
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Clean out ModelSerializer special casing from Serializer.field_from_native
parent
fb3b5780
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
4 additions
and
17 deletions
+4
-17
rest_framework/serializers.py
+4
-17
No files found.
rest_framework/serializers.py
View file @
47492e3e
...
@@ -379,11 +379,7 @@ class BaseSerializer(WritableField):
...
@@ -379,11 +379,7 @@ class BaseSerializer(WritableField):
serializer
=
self
.
__class__
(
**
kwargs
)
serializer
=
self
.
__class__
(
**
kwargs
)
if
serializer
.
is_valid
():
if
serializer
.
is_valid
():
if
isinstance
(
serializer
,
ModelSerializer
):
into
[
self
.
source
or
field_name
]
=
serializer
.
object
into
[
self
.
source
or
field_name
]
=
serializer
else
:
into
[
self
.
source
or
field_name
]
=
serializer
.
object
# into[self.source or field_name] = serializer.object
else
:
else
:
# Propagate errors up to our parent
# Propagate errors up to our parent
raise
NestedValidationError
(
serializer
.
errors
)
raise
NestedValidationError
(
serializer
.
errors
)
...
@@ -681,12 +677,6 @@ class ModelSerializer(Serializer):
...
@@ -681,12 +677,6 @@ class ModelSerializer(Serializer):
if
instance
:
if
instance
:
return
self
.
full_clean
(
instance
)
return
self
.
full_clean
(
instance
)
# def save_object(self, obj, **kwargs):
# """
# Save the deserialized object and return it.
# """
# obj.save(**kwargs)
# =======
def
save_object
(
self
,
obj
,
parent
=
None
,
fk_field
=
None
,
**
kwargs
):
def
save_object
(
self
,
obj
,
parent
=
None
,
fk_field
=
None
,
**
kwargs
):
"""
"""
Save the deserialized object and return it.
Save the deserialized object and return it.
...
@@ -706,13 +696,10 @@ class ModelSerializer(Serializer):
...
@@ -706,13 +696,10 @@ class ModelSerializer(Serializer):
if
related
is
None
:
if
related
is
None
:
previous
=
getattr
(
self
.
object
,
accessor_name
,
related
)
previous
=
getattr
(
self
.
object
,
accessor_name
,
related
)
previous
.
delete
()
previous
.
delete
()
elif
isinstance
(
related
,
ModelSerializer
):
elif
isinstance
(
related
,
models
.
Model
):
# print related.object
# print related.related_data, related.m2m_data
fk_field
=
obj
.
_meta
.
get_field_by_name
(
accessor_name
)[
0
]
.
field
.
name
fk_field
=
obj
.
_meta
.
get_field_by_name
(
accessor_name
)[
0
]
.
field
.
name
related
.
save_object
(
related
.
object
,
parent
=
self
.
object
,
fk_field
=
fk_field
)
setattr
(
related
,
fk_field
,
obj
)
# setattr(related, fk_field, obj)
self
.
save_object
(
related
)
# related.save(**kwargs)
else
:
else
:
setattr
(
self
.
object
,
accessor_name
,
related
)
setattr
(
self
.
object
,
accessor_name
,
related
)
obj
.
_related_data
=
{}
obj
.
_related_data
=
{}
...
...
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