我正在查看Ruby on Rails Active Record源代码以搜索SQL生成的位置,但我无法找到它。由于Active Record将诸如 Person.first 之类的方法转换为Oracle,MySQL或Sql Server查询,因此我认为它将位于Active Record文件夹中。我已经找了几天,但我无法找到生成这些查询的地方。
在哪里可以找到实际的查询生成?
答案 0 :(得分:0)
ActiveRecord使用Arel进行SQL生成。 Arel::Visitors::ToSql
的源代码是生成大多数SQL的地方。
你可以在Github上找到它:
https://github.com/rails/arel/blob/master/lib/arel/visitors/to_sql.rb