我对使用脚本创建字段索引感兴趣。 看到一个用include root创建字段索引的函数。 没有找到可以用路径索引创建字段的函数。
试过这个功能
admin:database-add-field-paths($config, $dbid, $field-name, $field-path)
错误地显示“无字段存在”。
对此提出任何建议。
答案 0 :(得分:1)
我认为您正在寻找admin:database-path-field
。它的输出可以使用admin:database-add-field
添加到管理配置中,大致如下:
let $config := admin:get-configuration()
let $dbid := xdmp:database()
let $fieldspec :=
let $field-name := "myField"
let $field-paths := admin:database-field-path("/a/b", xs:double(2.0))
return
admin:database-path-field($field-name, $field-paths)
let $newConfig := admin:database-add-field($config, $dbid, $fieldspec)
管理REST api也许值得一看,它允许从外部部署配置,并且编程更少。您需要向:8002/manage/v2/databases/[id-or-name]/properties
发送PUT请求,并将以下内容作为有效负载的一部分:
"field": [
{
"field-name": "status",
"field-path": [
{
"path": "/pdbe:person-envelope/pdbm:person/pdbm:status",
"weight": 1
},
{
"path": "/pdbm:person/pdbm:status",
"weight": 1
}
],
"field-value-searches": true
}
]
HTH!