0

我正在使用吗啡。正如你所知道的一个简单的搜索,我可以使用这个:

q.field("fieldname").containsIgnoreCase(texttosearch); 

但我的字段类型是地图。所以我必须像这样改变它(使用点):

q.field("mapname.fieldname").containsIgnoreCase(texttosearch);

但我想再次搜索所有领域。我可以通过重复所有字段来简单地做到这一点。问题是我的字段数不是静态的。我该如何解决这个问题?

4

1 回答 1

3

您不应将其存储为地图,而应将其存储为键/值对的数组/列表。然后您可以搜索关键字段,并将其编入索引。这不是 morphia 目前为您做的事情,而是可能是 Map 的另一种存储格式。这将是一种非常不同的格式。

查看此讨论以获取更多背景信息

于 2012-02-22T23:21:35.617 回答