Module: ActiveRecord::Explain
- Defined in:
- lib/active_record_json_explain/activerecord/monkey_patches/json_explain.rb
Instance Method Summary collapse
Instance Method Details
#exec_explain(queries, json: false) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/active_record_json_explain/activerecord/monkey_patches/json_explain.rb', line 22 def exec_explain(queries, json: false) # NOTE: add arg json str = queries.map do |sql, binds| msg = +"EXPLAIN for: #{sql}" unless binds.empty? msg << " " msg << binds.map { |attr| render_bind(attr) }.inspect end msg << "\n" msg << connection.explain(sql, binds, json: json) # NOTE: add arg json end.join("\n") # Overriding inspect to be more human readable, especially in the console. def str.inspect self end str end |