2011-06-10 161 views
1

內StreamPage我定義這個代碼搜索與太陽黑子搜索返回

searchable do 
    text :html, :stored => true, :boost => 2 
    integer :stream_id 
end 

我有44記錄,並使用REINDEX在此設置

s = StreamPage.search do |st| 
    st.keywords 'fsdgsfdgdffsdfgsfdgfd' 
end 

所以,即使我在上面運行在數據庫中的所有結果代碼我得到所有記錄,任何我寫入關鍵字我得到的結果。

+0

太陽黑子記錄sunspot-solr-XXX.log上的所有查詢。請發佈什麼查詢發送到服務器。 – 2011-06-10 16:23:08

回答

0

您的搜索聲明可能已關閉。你有沒有嘗試過使用這種語法?

s = StreamPage.search { keywords('fsdgsfdgdffsdfgsfdgfd') } 

我的猜測是使用局部變量st搞得一團糟。我也會通過運行這個命令來驗證所有東西是否已被正確索引:

bin/rake sunspot:reindex 
+0

我已經試過兩種方法。最奇怪的是,在模型流我得到正確的信息,它是相同的搜索定義只有其他領域的定義。 – 2011-06-12 07:31:49

+0

您確定StreamPage#html函數正在返回要建立索引的正確文本嗎? – 2011-06-12 07:38:58

+1

是的。它的確如此。我發現這個問題,在配置中使用詞幹造成錯誤的突出顯示 – 2011-06-20 15:32:26