例えばユーザのメールアドレスの存在確認とuser_id
への変換を行いたい場合に、
class BlogSearchSerializer(serializers.Serializer): user_email = serializers.CharField(required=false) user_id = serializers.SerializerMethodField() def validate_user_email(self, value): user = User.get(email=value) # ←これと if not user: raise serializers.ValidationError('user not found') return value def get_user_id(self, instance): user = User.get(email=value) # ←これ return user.id
バリデーションとID変換で、二回User.get
を発行するのが気になり、悩んでいます。
このような場合のベストプラクティスはあるのでしょうか。
普通?はメアドが間違ってるから検索結果が0件とするところですが、
「メアドが間違っています。該当ユーザは存在しません」というエラーを返す必要がある想定です。