Описание тега dry-validation

Гем dry-rb, обеспечивающий мощную проверку данных на основе логики предикатов в ruby.

Введение Страница

В отличие от других хорошо известных решений для валидации в Ruby, сухая валидация использует другой подход и уделяет большое внимание ясности, ясности и точности логики валидации. Он предназначен для работы с любыми входными данными, будь то простой хеш, массив или сложный объект с глубоко вложенными данными.

Он основан на идее, что каждая проверка инкапсулируется простым предикатом без сохранения состояния, который получает некоторые входные данные и возвращает либо истину, либо ложь. Эти предикаты инкапсулируются правилами, которые могут быть составлены вместе с использованием логики предикатов. Это означает, что вы можете использовать общие логические операторы для построения схемы проверки.

Валидации можно описать с большой точностью, сухая проверка устраняет двусмысленные концепции, такие как проверка присутствия, когда мы не можем точно сказать, отсутствует ли какой-либо атрибут или ключ, или просто значение равно нулю.

В сухой проверке безопасность типов - это первоклассная функция, чего полностью не хватает в других библиотеках проверки, и это важная и полезная функция. Это означает, что вы можете составить проверку, основанную на типе данного значения. Например, нет смысла проверять каждый элемент массива, когда он оказывается пустой строкой.