Rails Rails 如何用一句 SQL 语句查询出记录总数和部分记录

fangxing204 · 发布于 2016年7月02日 · 最后由 xiaoronglv 回复于 2016年7月05日 · 831 次阅读
23959

想实现一个模糊搜索, 对搜索结果需要分页, 所以我需要满足条件的记录总数,同时又需要部分记录,能用一句代码做到吗?

users = User.where(User.arel_table[:name].matches("%#{params[:search_string]}%")).order(:name).limit(count).offset(count*(page-1))
共收到 3 条回复
5

很有才🎉

8

用一条语句是一个伪需求啊!你的真实需求其实应该是速度快,一条语句当然可以写,但是其实不如分开快...你看Rails的分页其实都是两条SQL的,没必要追求一条SQL...

1638

#2楼 @hooopo

有时候故意多写一行, 那个变量名就纯当注释用.

# before
title = comment.commentable.title

# after
document = comment.commentable
title = document.title
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册