【问题标题】:Date Formatting In Solr SearchSolr 搜索中的日期格式
【发布时间】:2016-01-19 07:16:42
【问题描述】:

我正在将这种格式的日期插入 Solr - (2015-11-10T10:24:53+00:00),但是当我触发搜索查询时,它会以这种格式返回结果 - (2015-11- 0T10:24:53Z)。

我怎样才能得到与我插入的格式完全相同的日期?

【问题讨论】:

标签: apache search solr


【解决方案1】:

Solr 没有任何时区概念,仅支持 UTC (2015-11-10T10:24:53Z) 格式。

您必须在显示层的输出和索引时进行转换(如果它们都相同并且您不必考虑时区,您可以假装它们是 UTC 到 Solr)。

【讨论】:

  • 有什么办法可以得到输出 (2015-11-10T10:24:53+00:00),因为我不打算在未来?
  • @user1357790 如果您不打算查询它(作为日期),您可以将其作为 StrField 进行索引,但我可能建议您在显示层中处理它。
  • 当我尝试将其索引为 StrField 时,输出为 1447151093000,你能举个例子解释一下吗?
  • 如果你只是改变了字段类型,它会返回已经被索引的值。您必须更改文件类型并实际索引您想要显示的字符串值。如果您正在使用一个层(例如 DIH 等)并在索引时转换时间戳,则必须检查该层以获得解决方案。
  • 我可以理解你的解决方案。你这里的文件类型到底是什么意思?无论如何,我在这里没有使用 DIH,如果可能的话,用一个例子来解释一下?