根据您定义的规则验证复杂的json数据

poseidon-rules的Python项目详细描述


波塞冬规则

根据您定义的规则验证复杂的json数据。在

这个图书馆的哲学

业务代码具有复杂的逻辑,并且它们可以被深度包装,所以我们需要一个DSL来在一个地方定义这些规则。在

每个逻辑都可以有两个basci关系,and或{},但是{}逻辑留给开发人员编写的规则评估。在

一旦一条规则不满足,整个逻辑规则将是错误的,调用帮助函数get_reason_stack将找到规则的最深名称,即RuleFail中包装的异常消息。在

规则是以dict格式定义的,这与Haskell lazy求值相比是糟糕的。因此,您可以将闭包函数传递给“must”或“else_must”,当“if”在运行时计算为true(“must”)或false(“else_must”)时,将调用该函数,而不是define time。此功能使您在某些情况下不必关心异常。在

使用

test

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法启动应用程序:JNLP错误   java根据用户输入在PreparedStatement中使用setTime()或setNull()   java EJB与同步   java以object为键通过hashmap进行搜索   java中的模10^9+7   针对包含其他对象的对象的java OOP最佳实践   如何将字符串作为HTML代码从Java文件读取到JSP页面?   java我的POM怎么了?“解析表达式..检测到递归表达式循环”   用于Hbase的Mapreduce的java NoSuchMethodError   JAVAlang.SecurityException:权限拒绝:启动意图{act=安卓.Intent.action.MAIN cat=[安卓.Intent.category.LAUNCHER]   数组初始化谜语Java   通过arraylist搜索时的java句柄关联