我有用户要求在填充索引后将动态字段添加到索引中。目前我正在使用solrj添加它们。
SolrInputDocument solrDoc = new SolrInputDocument();
solrDoc.setField("id",myId);
solrDoc.setField("model_txt", "test123");
solr.add(solrDoc);
solr.commit();
已添加字段模型。
但是当用户尝试使用dismax进行搜索时,他们必须使用
model_txt:test123
代替:
模型:test123
我知道solr需要前缀/后缀来确定字段类型,但有没有办法在添加字段后删除它?或者另一种获得相同结果的方法?
编辑:
我问这个的原因是因为用户可以创建新的动态字段,但他不知道该类型。
因此,如果他将模型添加为新的动态字段,他不知道它是索引中的model_txt。
我知道我应该避免用户输入字段名,但是当他们想要动态添加字段名时,没有其他方法可以这样做吗?