如何从solr索引字段中删除转义字符?

时间:2016-09-02 08:36:50

标签: solr

我正在将Json数据索引到solr字段,例如

{"employees":[
    {"firstName":"John", "lastName":"Doe"},
    {"firstName":"Anna", "lastName":"Smith"},
    {"firstName":"Peter", "lastName":"Jones"}
]}

但Json正在使用转义字符编入索引,所以现在我将json作为

  "{\"employees\":[\n    {\"firstName\":\"John\", \"lastName\":\"Doe\"},\n    {\"firstName\":\"Anna\", \"lastName\":\"Smith\"},\n    {\"firstName\":\"Peter\", \"lastName\":\"Jones\"}\n]}"

有没有办法在没有转义json或desccaping结果的情况下进行索引,而仅从solr端显示?

2 个答案:

答案 0 :(得分:0)

这是在solr文本字段中完美存储json数据。 如果您通过管理员看到它,您将在UI中看到转义格式的json,但是如果您要查询它然后解码json,它将以您正在使用的语言返回正确的对象。 Python示例。

my_json_field =  json_string // read from solr using api calls or module like pysolr
my_obj = json.loads(my_json_field)

答案 1 :(得分:0)

最后,使用Transforming Result Documents

解决方案非常简单

例如

fl=my_field_with_escaped_json:[json]

谢谢大家