【问题标题】:Solarium - Need to update read-only resultset日光浴室 - 需要更新只读结果集
【发布时间】:2016-04-25 15:19:12
【问题描述】:

我正在为客户构建一个交互式搜索服务,我们需要的部分功能是能够向文档添加“标签”。这些标签既是预先存在的,也是自定义的。该架构已设置为支持此功能,但我在使用 Solarium PHP 更新结果集时遇到问题。

例如,如果用户在我们的数据库中搜索“溢出”,并返回 1-1000+ 个结果,他们需要能够使用任意数量的标签来标记整个结果集。

所以我从 execute() 获取结果集,目前无法更改返回的文档——例外是“无法更改只读文档”。

有人有解决办法吗?

【问题讨论】:

    标签: php solr solarium


    【解决方案1】:

    对于可更新的文档,您应该使用此类:Solarium\QueryType\Update\Query\Document

    Solarium 使用此文档类型作为默认选择查询两个 原因:

    在大多数情况下不需要更新功能,所以它只会 阻止使用 Solr 作为数据库的开销,如阅读 - 改变——保存。几乎所有模式都有仅索引字段。有 无法读取那里字段的值,因此这些数据将丢失 重新保存文档时!更新通常应基于 您的原始数据(即数据库)。如果你真的确定你想要 要更新 Solr 数据,您可以将读写文档类设置为 选择查询的文档类型,更改文档并使用它们 在更新查询中。

    http://solarium.readthedocs.org/en/stable/documents/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多