From ec6d553fa699abdcc0947d1f9d3a440f250e412e Mon Sep 17 00:00:00 2001 From: evazion Date: Sun, 26 Nov 2017 13:36:28 -0600 Subject: [PATCH] Move execute_sql / select_value_sql etc to ApplicationRecord. --- app/models/application_record.rb | 10 ++++++++ .../initializers/active_record_extensions.rb | 25 ------------------- 2 files changed, 10 insertions(+), 25 deletions(-) delete mode 100644 config/initializers/active_record_extensions.rb diff --git a/app/models/application_record.rb b/app/models/application_record.rb index 12463bf97..b5e663a64 100644 --- a/app/models/application_record.rb +++ b/app/models/application_record.rb @@ -64,6 +64,16 @@ class ApplicationRecord < ActiveRecord::Base connection.execute("SET STATEMENT_TIMEOUT = #{CurrentUser.user.try(:statement_timeout) || 3_000}") unless Rails.env == "test" end end + + %w(execute select_value select_values select_all).each do |method_name| + define_method("#{method_name}_sql") do |sql, *params| + self.class.connection.__send__(method_name, self.class.send(:sanitize_sql_array, [sql, *params])) + end + + self.class.__send__(:define_method, "#{method_name}_sql") do |sql, *params| + connection.__send__(method_name, send(:sanitize_sql_array, [sql, *params])) + end + end end concerning :PostgresExtensions do diff --git a/config/initializers/active_record_extensions.rb b/config/initializers/active_record_extensions.rb deleted file mode 100644 index 55d46a950..000000000 --- a/config/initializers/active_record_extensions.rb +++ /dev/null @@ -1,25 +0,0 @@ -module Danbooru - module Extensions - module ActiveRecord - extend ActiveSupport::Concern - - %w(execute select_value select_values select_all).each do |method_name| - define_method("#{method_name}_sql") do |sql, *params| - self.class.connection.__send__(method_name, self.class.sanitize_sql_array([sql, *params])) - end - - self.class.__send__(:define_method, "#{method_name}_sql") do |sql, *params| - connection.__send__(method_name, sanitize_sql_array([sql, *params])) - end - end - end - end -end - -class ActiveRecord::Base - class << self - public :sanitize_sql_array - end - - include Danbooru::Extensions::ActiveRecord -end