用例處理是這樣的:思考獅身人面像的應用範圍內的搜索,並用結果
我想從讓一個文本框我的用戶搜索,那麼搜索結果頁面上組織由類的結果,實質上。
舉例來說,假設我爲思維獅身人面像配置了以下模型:Post
,Comment
和User
。 (在我的情況下,我有大約10個模型,但爲了清晰起見StackOverflow我假裝只有3個)
當我做了一個搜索類似於:ThinkingSphinx.search 'search term', :classes => [Post, Comment, User]
我不確定最好的方式來遍歷結果和建立我的網頁的部分。
我的第一個傾向是做這樣的事情:
- 執行搜索
- 遍歷設置返回的結果,並做了result.is_a(類類別)根據類類別
- ,加1 3陣列的項目 -
@match_posts
,@matching_comments
或@matching_users
- 傳遞這些3個實例變量下我的看法
有沒有更好或更有效的方法來做到這一點? 謝謝!
嗨,帕特,謝謝你的回答。儘管如此,我對你的第二段和第三段有些困惑。關於第2段,我試圖儘可能簡單地爲我的用戶進行搜索。 1搜索欄,輸入任何內容..然後根據類組織查看結果。即與您的搜索相匹配的文章,與您的搜索匹配的作者姓名,與您的搜索相匹配的評論等等。我想我的問題是如何有效和有效地整理這樣的結果?在第3段中似乎與第2段沒有什麼不同......只是......找出@ view render vs其他地方 –
好吧,所以它聽起來像你想按類名排序,然後按照每個類集內的相關性進行排序。 http://groups.google.com/group/thinking-sphinx/browse_thread/thread/813de527037534bd/6c6d862554d7eb64?lnk=gst&q=sort+by+class#6c6d862554d7eb64有一個如何做到這一點的例子。 – pat
然後我會有一個幫助器,它接受一個參數(一個搜索結果)並呈現特定的部分。當然,你可以命名partials,以便它們符合Rails的期望('app/views/model_name/_model_name.html.erb')並調用'render result'。 – pat