【发布时间】:2016-07-25 15:20:24
【问题描述】:
我们有许多几乎完全相同的 Solr schema.xml 文件。如果我们可以提取公共部分并将它们放在一个基本模式中,然后我们在自定义模式文件中覆盖它,那就太好了。
查看我的架构文件,每个文件大约有 1/7 是自定义的,其余的是可以提取和集中的样板文件。
有没有办法做到这一点?
【问题讨论】:
标签: xml inheritance solr schema
我们有许多几乎完全相同的 Solr schema.xml 文件。如果我们可以提取公共部分并将它们放在一个基本模式中,然后我们在自定义模式文件中覆盖它,那就太好了。
查看我的架构文件,每个文件大约有 1/7 是自定义的,其余的是可以提取和集中的样板文件。
有没有办法做到这一点?
【问题讨论】:
标签: xml inheritance solr schema
TYPO3 使用通用 XML x:include 来实现。这是 GitHub 上的 the English example,他们还有很多。
这可能不适用于托管模式,因为它会在第一次读取时重新生成完整模式。
或者,正如 Binoy 所写,从公共源引导模式,然后使用 Schema API 应用更改。
【讨论】:
如果您希望这样做是 solr 本身,那么我认为这是不可能的。
或者,您可以做的是在每次创建新的核心/集合时使用一份基本架构副本,然后使用架构 API 进行所需的任何更改。但是,这至少需要您编写一些代码或进行一些 api 调用。
【讨论】:
org:foo 之类的查询。如果我们使用动态字段,那么我们的字段名称必须更改。