ruby-on-rails - 对 SQL 的 Activerecord 查询

标签 ruby-on-rails ruby activerecord

我想知道是否有一种方法可以在不实际执行查询的情况下从 ActiveRecord 查询中获取 SQL 查询。我正在寻找这样的东西:

get_sql_query(Item.where(status: 'open')) 
# SELECT * FROM items WHERE status="open"

最佳答案

你可以像这样使用to_sql方法:

User.where(name: 'Oscar').to_sql
# returns SELECT "users".* FROM "users"  WHERE "users"."name" = 'Oscar'

在您的情况下,它将是:

Item.where(status: 'open').to_sql

关于ruby-on-rails - 对 SQL 的 Activerecord 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35620965/

相关文章:

javascript - 在索引操作栏内创建/编辑表单

ruby - 如何仅基于键从哈希数组中删除重复项?

javascript - 将浮点十六进制转换为 Ruby 中的 float

ruby-on-rails - 如何在 Rails 和 PostgreSQL 中有效地搜索匹配条件的最后一条记录?

ruby-on-rails - Rails 从 ActiveRecord 对象生成不正确的 SQL

ruby-on-rails - Rails ActionController::InvalidAuthenticityToken 错误 Heroku

css - Rails Bootstrap 已损坏

ruby-on-rails - 用 Nokogiri 解析然后保存到数据库?

ruby - 如何使用 em_mysql2 解决 'connection is still waiting for a result' 错误

mysql - 删除 ActiveRecord 对象时出现问题,外键约束失败