Mit Joi muss eines der beiden Felder nicht leer sein
Wenn ich zwei Felder habe, möchte ich nur überprüfen, ob mindestens ein Feld eine nicht leere Zeichenfolge ist. Wenn beide Felder leere Zeichenfolgen sind, schlägt dies jedoch fehl.
Something so nicht validiert
var schema = Joi.object().keys({
a: Joi.string(),
b: Joi.string()
}).or('a', 'b');
Bei der Validierung gegen
{a: 'aa', b: ''}
Dasor
Bedingung prüft nur, ob einer der Schlüssel vorhanden ista
oderb
, testet aber, ob die Bedingung füra
oderb
ist wahr.Joi.string()
schlägt für leere Zeichenfolgen fehl.
Hier sind einige Testfälle zu demonstrieren