您也可以只覆盖用于此目的的custom_signupon 方法。RegisterSerializer
from rest_auth.registration.serializers import RegisterSerializer
from rest_auth.registration.views import RegisterView
from rest_framework import serializers
class NameRegistrationSerializer(RegisterSerializer):
first_name = serializers.CharField(required=False)
last_name = serializers.CharField(required=False)
def custom_signup(self, request, user):
user.first_name = self.validated_data.get('first_name', '')
user.last_name = self.validated_data.get('last_name', '')
user.save(update_fields=['first_name', 'last_name'])
class NameRegistrationView(RegisterView):
serializer_class = NameRegistrationSerializer
然后在您的urls.py
url(r'^rest-auth/registration/name-registration/$', NameRegistrationView.as_view(), name="rest_name_register")
或设置REGISTER_SERIALIZER在settings.py
REST_AUTH_REGISTER_SERIALIZERS = {
'REGISTER_SERIALIZER': 'path.to.RegisterSerializer',
}