【发布时间】:2018-08-03 05:49:56
【问题描述】:
我有一个自定义用户模型。我创建了一个用于用户注册的 api。以下是我的序列化程序。
class UserSerializer(serializers.ModelSerializer):
email = serializers.EmailField(
required=True,
validators=[
UniqueValidator(queryset=get_user_model().objects.all())
]
)
password = serializers.CharField(min_length=8)
class Meta:
model = get_user_model()
fields = ('email', 'password')
extra_kwargs = {'password': {'write_only': True}, }
def create(self, validated_data):
email = validated_data.pop('email')
password = validated_data.pop('password')
user = get_user_model().objects.create_user(email, password, **validated_data)
return user
这是我的看法:
class Registration(generics.CreateAPIView):
serializer_class = UserSerializer
queryset = get_user_model().objects.all()
有两个输入 email 和 password。 password 字段作为 write_only 字段给出。但是在创建用户之后,api 返回散列密码。如何防止密码被退回?
【问题讨论】:
-
用
django-rest-registrationgithub.com/szopu/django-rest-registration怎么样
标签: python django rest django-rest-framework