İki alanım varsa, en az bir alanın boş olmayan bir dize olduğunu doğrulamak isterim, ancak her iki alan boş dizeler olduğunda başarısız olur.Joi'yi kullanarak boş olmayan iki alandan birini gerektirir
Böyle bir şey anahtar a
veya b
ya varlığı için
{a: 'aa', b: ''}
or
durum sadece testler karşı doğrularken
var schema = Joi.object().keys({
a: Joi.string(),
b: Joi.string()
}).or('a', 'b');
doğrulamak ancak a
için koşul olup testi yapar etmez veya b
doğrudur. Joi.string()
boş dizeler için başarısız olur. İşte
aşağıda
http://requirebin.com/?gist=84c49d8b81025ce68cfb
Teşekkür @ Kevin-wu :) – Brendan
Bu çalışır, ancak gerçekten ölçeklenebilir değildir - bu iki takım olsaydı, sen dört alternatifleri ihtiyacım olacağını size üç set varsa Bunlar sonra sekiz tane lazım. Yine de daha iyi bir yol olduğu görünmüyor. –