0

我想在我的網站上添加一個像Facebook上的搜索欄。我希望我的用戶能夠搜索我的產品,我的其他用戶......但是我也希望結果能夠在不按下按鈕的情況下實時顯示。我目前正在尋找幾種選擇(思考獅身人面像,鼬,...),但我不知道哪一個使用,這就是爲什麼我想從專業人士得到的建議;)在Rails中使用全文搜索引擎的建議

所以我的要求是:

  • 結果在當前頁面上的框顯示在實時。
  • 用CSS定製
  • 能夠在我的PostgreSQL數據庫通過severals表進行查詢。
  • 我目前使用Heroku進行生產。

我想爲我的需要選擇最好的一個,這就是爲什麼我問你的意見。 在此先感謝!

回答

1

確保分離要如何從你想要的索引從您希望如何部署(第三)顯示的數據(你的前兩個要求)。

讓我們開始向後。 Heroku對機器配置提供有限的支持;您提到的兩個選項都需要安裝讀取和寫入文件的服務。 Heroku有兩種選擇:1)PostgreSQL具有內置的全文搜索功能; 2)Heroku已經使飛獅隊成爲一個選項,以及these other options documented on the Heroku site。前兩個選項可能爲您的數據庫提供最簡單的鏈接,但我沒有嘗試過其他選項,所以它們也可能會這樣做。所以現在你有一個搜索索引,部署。

實時「增量」搜索是純粹的呈現的問題......也許性能。開始輸入並開始獲得結果只不過是通過AJAX向搜索服務器發送請求,通常在輸入短時間(可能爲50ms)之後,並處理結果顯示。有幾種方法可以使這個簡單的written up here in this SO answer

+0

因此,與飛獅體飛行應該是最好的選擇,並在其上添加和自動完成js將是它的方式?謝謝 –

+0

我想這就是我會走的路。獅身人面像非常強大,雖然我沒有使用FlyingSphinx,但它只是像ThinkingSphinx這樣的包裝。 PostgreSQL全文索引並不豐富,但如果你想要的東西都在你的數據庫中,肯定沒有什麼更容易的。然後是的,在頂部添加任何自動完成JS。完成它,它的工作原理;-) –

0

我結束了保持PostgreSQL的引擎,但現在使用選擇2作爲了jQuery的介紹,並能得到一個類似Facebook的搜索框:

Select2 with Rails and JSON

感謝您的幫助!