Cerberus では必須フィールドを使用できますが、欠落している場合に警告メッセージがログに記録されるように、「優先」クラスのフィールドが必要です。私が持っている、素晴らしいとは思えないいくつかのアイデアは次のとおりです。
カスタム ruleを使用してバリデーターを拡張することもできますが、これらは
field
およびvalue
引数で呼び出されるため、欠落しているフィールドでこの関数が呼び出されるのではないかと疑っています。不足しているフィールドを生成するためにドキュメントで呼び出される__validate_required_fieldsの方が理想的ですが、それをフックする方法がわかりません。Cerberus はcheck_withオプションを提供していますが、欠落しているフィールドに対してこれが呼び出されるかどうかはわかりません。
これらを必須としてマークし、エラー ハンドラでトレースを実行することができます。「優先」フィールドが欠落している場合に検証が失敗しないため、これは理想的ではありません。