我正在將使用acts_as_solr的Rails應用程序轉換爲太陽黑子。如何在太陽黑子中動態構建搜索塊?
該應用程序使用solr中的字段搜索功能,該功能在acts_as_solr中公開。你可以給它一個這樣的查詢字符串:
title:"The thing to search"
它會在標題字段中搜索該字符串。
在轉換爲太陽黑子時,我正在解析查詢字符串的字段特定部分,我需要動態生成搜索塊。事情是這樣的:
Sunspot.search(table_clazz) do keywords(first_string, :fields => :title) keywords(second_string, :fields => :description) ... paginate(:page => page, :per_page => per_page) end
這是通過也需要做持續時間(秒,整數)範圍和否定,如果查詢需要變得複雜。
在當前系統上,用戶可以在標題中搜索某些內容,但不包括其他字段中的其他字段的記錄以及按持續時間確定範圍。
簡而言之,如何動態生成這些塊?
只是一個想法:我們可以在紅寶石創建塊動態,並把它傳遞給搜索功能? – 2012-03-12 08:00:18