我试图覆盖RegisterSerializer
以添加我可以在注册过程中保存在后端的其他字段,但我无法使其正常工作。我使用React作为视图图层,在我添加RegisterSerializer
之后使用默认RegisterSerializerCustom
时,它完全传递了数据,但它根本不起作用
这是我的代码:
from rest_auth.registration.serializers import RegisterSerializer
class RegisterSerializerCustom(RegisterSerializer):
mobile = serializers.CharField(required=False, write_only=True)
def get_cleaned_data(self):
return {
'username': self.validated_data.get('username', ''),
'password1': self.validated_data.get('password1', ''),
'email': self.validated_data.get('email', ''),
'mobile': self.validated_data.get('mobile', ''),
}
def validate_mobile(self, mobile):
return mobile
def save(self, request):
res = super(RegisterSerializerCustom, serializers).save(request)
return res
我在setting.py
中添加了我的这些内容REST_AUTH_SERIALIZERS = {
'REGISTER_SERIALIZER':'user_profile.serializers.RegisterSerializerCustom',
}
我的代码中有什么问题?!
答案 0 :(得分:1)
它必须像这样在setting.py中注册:
REST_AUTH_REGISTER_SERIALIZERS = {
'REGISTER_SERIALIZER':'user_profile.serializers.RegisterSerializerCustom',
}