1

我想知道 mongock 是否支持合成器,例如:

 "allOf": [{ "$ref": "/schema/base" }]

当它在集合创建期间构建验证时,或者如果您知道一个库可用于“合并”一个独特的大 json 模式中的所有引用,该模式可作为用于验证的 Document 的输入。

我用来验证集合的代码是:

    String jsonString = readJsonFile(fileName);

    Document doc = Document.parse(jsonString);

    ValidationOptions validationOptions = new ValidationOptions();
    validationOptions.validator(doc);
    validationOptions.validationAction(ValidationAction.ERROR);
    validationOptions.validationLevel(ValidationLevel.STRICT);
    CreateCollectionOptions cco = new CreateCollectionOptions();
    cco.validationOptions(validationOptions);

正如您现在所看到的,我只是从文件中读取 json 模式并使用 Document 对象对其进行解析。

我想让 json 模式尽可能简单以便人类可读,并且我有扩展其他对象的对象,因此将 json 模式文件分开来表示超级对象会更容易。

我正在使用 java 1.13 和 spring boot 2.4.2。

4

1 回答 1

4

Mongock 目前不提供模式验证机制。但是,团队正在考虑在第 5 版发布后作为补丁添加

于 2021-07-13T15:53:33.083 回答