您可以将实体的名称存储在Solr data-config.xml中。 例如:您有一个名为
的实体<entity name="test1" ...
<field column=...
,并且您想要将实体名称(test1)作为值存储在名为EntityName的其他字段中。您可以使用脚本功能完成此操作:
<script><![CDATA[
function addName(row, context) {
row.put("entityName_s", context.getEntityAttribute("name"));
return row;
}
]]></script>
(entityName_s,因为我们在这里使用了动态字段...)
生成的文档如下:
{
"entityName_s":"test1",
您实际上可以使用Context类中封装的所有功能:https://lucene.apache.org/solr/4_10_0/solr-dataimporthandler/org/apache/solr/handler/dataimport/Context.html
玩得开心, 基督徒
PS:好问题,嵌套实体会发生什么...