Всем привет!
имеются сериализаторы
class CustomUserSerializer(serializers.ModelSerializer):
"""Serializer for User"""
is_subscribed = serializers.SerializerMethodField()
def get_is_subscribed(self, obj):
request = self.context.get("request")
if request and not request.user.is_anonymous:
user = request.user
return Follow.objects.filter(user=user, author=obj).exists()
return False
class Meta:
model = User
fields = (
"email",
"id",
"username",
"first_name",
"last_name",
"is_subscribed",
)
class CustomCreateUserSerializer(serializers.ModelSerializer):
"""Serializer for create User"""
def validate_username(self, value):
if User.objects.filter(username=value).exists():
raise serializers.ValidationError(f"{self.fields['username'].label} уже существует.")
return value
def validate_email(self, value):
if User.objects.filter(email=value).exists():
raise serializers.ValidationError(f"{self.fields['email'].label} уже существует.")
return value
class Meta:
model = User
fields = (
"email",
"id",
"username",
"first_name",
"last_name",
"password",
)
extra_kwargs = {"password": {"write_only": True}}
def create(self, validated_data):
try:
validated_data['password'] = make_password(validated_data.get('password'))
logger.info(f"Creating user with data: {validated_data}")
return User.objects.create(**validated_data)
except Exception as e:
logger.exception("Error creating user:")
raise
При создании пользователя , пользователь создается без пароля, несмотря на то что в запросе он есть, так же он может создаться без пароля в принципе. Уже всю голову изломал, помогите решить проблему