1
drf validatorと書いて、他のフィールドの値に基づいて必要なフィールドをマークします。たとえば :Django rest framework条件に必須のフィールド
def set_context(self, serializer_field):
print serializer_field.parent.initial_data
が、「initial_data」:まず
class MySerializer(serializers.Serializer):
has_children = fields.BooleanField()
nb_childs = fields.IntegerField(min_value=1, validators=[RequiredIf(field='has_children', value=True)], required=False)
私はclass based validatorは、このような方法で「has_children」の値を取得して、それを行うための方法だと信じていました設定されていません。どんな手掛かり?
申し訳ありませんが、それは私が尋ね、私はバリを望んでいないです:あなたは、特定のフィールドにエラーが発生する必要がある場合は
は、あなたは
ValidationError
コンストラクタにパラメータとして辞書を渡すことができます。 ValidationErrorはフィールドに関連付けられていないため、validateは無効になります。 – Fred'ValidationError'コンストラクタで辞書を渡すことで、フィールドレベルのエラーを発生させることができます:' raise ValidationError({'yourfield':['エラーメッセージ']}) ' –
申し訳ありません。それは私のために働くはずです、ありがとう – Fred