2
A
回答
4
在Rails 3中,您可以一起更改命令,wheres等。 ASCICast activerecord queries in Rails3
query = Post.order("published_at desc")
query = query.where("location_id = ?", params[:location_id]) unless params[:location_id].blank?
query = query.where("category_id = ?", params[:category_id]) unless params[:category_id].blank?
@posts = query.all
0
您可以緩存將用於排序類別和位置的字段到帖子中。
before_save: cache_sortables
def cache_sortables
self.category_title = self.category.title if self.category?
self.location_title = self.location.title if self.location?
end
Post.find(:all, :order => 'location_title, category_title, created_at')
當父類別/位置標題更改時,留給讀者作爲練習更新帖子。
相關問題
- 1. Rails,範圍問題
- 2. 非順序範圍
- 3. 範圍問題
- 4. rails命名爲範圍問題
- 5. rails,postgres,時區和範圍的問題
- 6. Rails路由:問題與「範圍:模塊」
- 7. Rails的:範圍過濾器的問題
- 8. 範圍按相反順序?
- 9. 角範圍問題
- 10. Ruby範圍問題
- 11. MongoDB範圍問題
- 12. $範圍問題angularjs
- 13. Dojo.hitch()範圍問題
- 14. $ .getJSON範圍問題
- 15. JS範圍問題
- 16. AS3範圍問題
- 17. Sencha範圍問題
- 18. user_likes範圍問題
- 19. Jquery範圍問題
- 20. Yacc範圍問題
- 21. Javascript範圍問題
- 22. JavaScript範圍問題
- 23. Backbone.sync範圍問題
- 24. RoR範圍問題
- 25. Javascript範圍問題
- 26. CoffeeScript範圍問題
- 27. REGEX範圍問題
- 28. Ç範圍問題
- 29. JavaScript範圍問題
- 30. Microsoft.Office.Interop範圍問題
如何指定location_id? – SuperString 2011-01-23 06:56:59