如何在`find_by_sql`查询中使用`Explain`?

时间:2014-05-16 04:31:30

标签: ruby activerecord

User.find_by_sql("...my statement here...").explain

导致错误undefined method explain for array ......这对我来说非常有意义......

我没有使用rails。我使用sinatra虽然这无关紧要,因为这些命令来自我正在使用的activerecord宝石......

有什么建议吗?

1 个答案:

答案 0 :(得分:5)

错误非常明显。

您可以explain个对象上运行ActiveRecord::Relation。但是,find_by_sql会为您提供Array,而explain无法调用{。}}。

您有两种解决方法:

  1. 使用ActiveRecord方法转换您的查询(返回 Relation
  2. explain字符串中使用find_by_sql