diff options
| author | Jamie Matthews | 2012-11-20 13:25:21 +0000 | 
|---|---|---|
| committer | Jamie Matthews | 2012-11-20 13:25:21 +0000 | 
| commit | 5f4c385a86b877217c1e1bc2eaff58206eabb747 (patch) | |
| tree | c213dda6fb24e4a1d1c4706295a4764309b44973 /docs/api-guide/fields.md | |
| parent | 3ab8c4966d065e930bd6e8bc6c26934ae5c5918c (diff) | |
| download | django-rest-framework-5f4c385a86b877217c1e1bc2eaff58206eabb747.tar.bz2 | |
Add example use of SerializerMethodField to docs
Diffstat (limited to 'docs/api-guide/fields.md')
| -rw-r--r-- | docs/api-guide/fields.md | 16 | 
1 files changed, 15 insertions, 1 deletions
diff --git a/docs/api-guide/fields.md b/docs/api-guide/fields.md index ebfb5d47..914d0861 100644 --- a/docs/api-guide/fields.md +++ b/docs/api-guide/fields.md @@ -328,7 +328,21 @@ This field is always read-only.  ## SerializerMethodField -This is a read-only field. It gets its value by calling a method on the serializer class it is attached to. It can be used to add any sort of data to the serialized representation of your object. The field's constructor accepts a single argument, which is the name of the method on the serializer to be called. The method should accept a single argument (in addition to `self`), which is the object being serialized. It should return whatever you want to be included in the serialized representation of the object. +This is a read-only field. It gets its value by calling a method on the serializer class it is attached to. It can be used to add any sort of data to the serialized representation of your object. The field's constructor accepts a single argument, which is the name of the method on the serializer to be called. The method should accept a single argument (in addition to `self`), which is the object being serialized. It should return whatever you want to be included in the serialized representation of the object. For example: + +    from rest_framework import serializers +    from django.contrib.auth.models import User +    from django.utils.timezone import now + +    class UserSerializer(serializers.ModelSerializer): + +        days_since_joined = serializers.SerializerMethodField('get_days_since_joined') + +        class Meta: +            model = User + +        def get_days_since_joined(self, obj): +            return (now() - obj.date_joined).days  [cite]: http://www.python.org/dev/peps/pep-0020/  [FILE_UPLOAD_HANDLERS]: https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-FILE_UPLOAD_HANDLERS  | 
