如何使用Kontent JS Management SDK为slug元素添加正则校验
解决方案
无需删除重建URL Slug元素,可直接就地完成配置,报错核心原因是JSON Patch路径语法使用错误。
错误点说明
- 路径定位语法错误:Management API 筛选内容类型元素数组中指定codename项的语法为
codename=匹配值,而非你使用的冒号分隔格式codename:page_url - 操作符使用错误:
addInto仅用于向数组类型字段插入新项,validation_regex是元素对象下的直接属性,不适用该操作符
正确实现代码
如果该元素此前配置过正则校验规则,使用replace操作直接覆盖即可:
const mod: ContentTypeModels.IModifyContentTypeData[] = [ { op: 'replace', path: '/elements/codename=page_url/validation_regex', value: { regex: '^[a-zA-Z-/]{1,60}$', flags: 'i', validation_message: 'URL slug must only contain (English/Latin) characters, forward slashes and hyphens', is_active: true, }, }, ]
如果运行时报目标路径不存在的错误,说明该元素从未配置过正则校验,将op字段值从replace改为add即可。
手动配置界面参考:
内容的提问来源于stack exchange,提问作者Roger Heathcote
相关产品推荐
相关产品推荐

