0
我在Railscast111描述返回基於一個過濾器職位搜索資源的屬性設置default_scope秩序,有下面的代碼:如何從另一非關聯模型
def filter_posts
posts = Post.order('created_at DESC')
posts = posts.where("name ilike ?", "%#{keywords}%")
posts = posts.where(... #numerous other filters
posts
end
過濾器本身似乎工作精細。但是,內容並不總是按照「created_at DESC」的順序返回。我如何對最終輸出進行排序,以便始終按照「created_at DESC」的順序排列?目前,Post和Search模型之間沒有關聯。我需要建立一個嗎?如果是這樣,怎麼樣?
謝謝@ply。問題是,如果我用兩個過濾器搜索,那麼兩個過濾器中的每一個都將按「created_at」排序,但最終輸出將顯示(過濾器1的結果由「created_at」排序),其次是(過濾器2的結果排序所以,我正在尋找一種方法來排序最終的輸出(而不是對每個單獨的組件過濾器進行排序)。關於我的搜索模型,它包含了上面的定義,它定義了一個定義''posts''這是'@posts || = filter_posts',並允許將搜索結果保存到模型中 – umezo
啊,謝謝澄清,它是一個完全獨立的模型(例如Search.rb),或者是你的Posts控制器中的Search _action? – ply
嗨@ply它是完全獨立的模型,有自己的控制器和視圖文件。 – umezo