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