2011-08-28 91 views
4

很多思考獅身人面像最近的問題。這裏有另外一個:思維獅身人面像:只查詢模型索引中的特定字段

在我的一些搜索中,我只想查詢一些包含在我的索引定義中的字段。我似乎無法找到任何關於此的事情,最近的事情是限制全球搜索到特定的模型。

所以..有可能只查詢索引中給定的字段子集?

回答

8

這是可能通過獅身人面像的extended match syntax

Model.search 「@(名稱,描述)紅寶石煎餅」:match_mode =>:擴展

如果名稱和說明是您要搜索的字段,'紅寶石煎餅'是搜索查詢。

+0

真棒。奇蹟般有效。 – rogerkk

1

不知道思維獅身人面像,但我知道如果你通過SphinxQL直接打人獅身人面像比你可以指定你想匹配的字段。

我會感到驚訝,如果TS didnt公開此功能你...

1

我還沒有與TS工作了一段時間,但我記得你可以創建單獨的索引,包括您使用的字段集在你的主索引上。我不認爲Sphinx會區分用於構建索引的字段,因爲這就是您使用全文搜索服務器的原因 - 一次搜索多個字段的內容。

所以,只要檢查如何建立與其他領域的新索引,以及如何使用這個新的索引,而不是默認。

3

現在,當獅身人面像V3是那樣,documentation說,擴展模式是默認開啓,所以你需要做的僅僅是這樣的:

Model.search "@(name,description) ruby pancakes" 
相關問題