aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/fields.py
diff options
context:
space:
mode:
authorTom Christie2014-11-17 18:36:32 +0000
committerTom Christie2014-11-17 18:36:32 +0000
commit0f508c58211051c873aae5a2d1c65a0c595e732a (patch)
tree9976823ca7445734918b18cb8a9f93d86b150edf /rest_framework/fields.py
parentd2537e51a53d23f00d94ffce900ad5d0e7369eea (diff)
downloaddjango-rest-framework-0f508c58211051c873aae5a2d1c65a0c595e732a.tar.bz2
Docs for advanced default argument usage. Closes #1945
Diffstat (limited to 'rest_framework/fields.py')
-rw-r--r--rest_framework/fields.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py
index 58482db5..36afe7a9 100644
--- a/rest_framework/fields.py
+++ b/rest_framework/fields.py
@@ -117,6 +117,17 @@ class CreateOnlyDefault:
return '%s(%s)' % (self.__class__.__name__, repr(self.default))
+class CurrentUserDefault:
+ def set_context(self, serializer_field):
+ self.user = serializer_field.context['request'].user
+
+ def __call__(self):
+ return self.user
+
+ def __repr__(self):
+ return '%s()' % self.__class__.__name__
+
+
class SkipField(Exception):
pass