Rails 怎么让 or 语句变得的优美

111eo · 2021年01月21日 · 最后由 jasonZYJ 回复于 2021年01月21日 · 352 次阅读
# 例如常见的
User.where("id = 1 or name = '1'")

大家平常都是怎么使用 or 的呢?

User.where(id: 1).or(User.where(name:'1')).to_sql
# "SELECT `users`.* FROM `users` WHERE (`users`.`id` = 1 OR `users`.`name` = '1')"

User.where(User.arel_table[:id].eq(1).or(User.arel_table[:name].eq('1'))).to_sql
#"SELECT `users`.* FROM `users` WHERE (`users`.`id` = 1 OR `users`.`name` = '1')"

需要 登录 后方可回复, 如果你还没有账号请 注册新账号