ruby-on-rails - Rails AREL .where 语句

标签 ruby-on-rails ruby

我有一个 AREL 查询:

@group.members.where('member_id != ?', 4)

正如预期的那样,此查询返回 ID 不等于 4 的所有成员。

如何构建相同类型的查询以省略多个 ID?例如:

@group.members.where('member_id != ?', [4 3])

理想情况下会返回 ID 不等于 4 或 3 的所有成员。

最佳答案

正确的语法是:

@group.members.where('member_id NOT IN (?)', [4, 3] )

如果您只传递一个整数(不是数组),这也有效:

@group.members.where('member_id NOT IN (?)', 12)

关于ruby-on-rails - Rails AREL .where 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15099558/

相关文章:

ruby-on-rails - 如何防止连接表中出现重复记录

ruby-on-rails - 如何在 Ruby 中通过元编程访问顶级命名空间?

ruby-on-rails - 从清除 session 中停止设计

Ruby - 更新运行脚本

ruby-on-rails - 在 Rails 中对同一模型列进行两个关联

ruby-on-rails - 如何使用 rspec 测试 Controller 中的所有路由

ruby-on-rails - Rails 应用程序缺少 en-UK.yml 文件

ruby-on-rails - 未定义的局部变量或方法 "articles_path"

ruby-on-rails - Rails 模型中的虚拟属性

ruby - 我可以从 ruby​​ 调用 tcl proc 吗?