作为创建 Schema 强制器然后尝试强制一组数据的结果,我得到:
#schema.utils.ErrorContainer{:error #<ValidationError schema.utils.ValidationError@2abfe6ca>}
我如何解释实际的验证错误是什么?
作为创建 Schema 强制器然后尝试强制一组数据的结果,我得到:
#schema.utils.ErrorContainer{:error #<ValidationError schema.utils.ValidationError@2abfe6ca>}
我如何解释实际的验证错误是什么?
您可以在此处ValidationError
找到类型的定义(因为您似乎在 JVM 上使用 Clojure,所以我删除了表达式):#+cljs
(deftype ValidationError [schema value expectation-delay fail-explanation])
以及此处ErrorContainer
记录的定义:
(defrecord ErrorContainer [error])
因此,要获取有关错误的更多信息,您可以访问内部的任何字段ValidationError
:
(defn validation-error-details [error]
(let [values (juxt #(.schema %)
#(.value %)
#(.expectation-delay %)
#(.fail-explanation %))]
(->> error :error values)))
;; Usage
(validation-error-details error) ; where error holds the value you posted