module Translatable::ActiveRecord::Relation

Public Class Methods

included(base) click to toggle source

Ugly hack to override ActiveRecord::Relation#exec_queries method After ruby >= 2.0.0 it’s possible to simply prepend ruby-doc.org/core-2.0/Module.html#method-i-prepend

# File lib/translatable/active_record/relation.rb, line 7
def self.included(base)
  base.class_eval do
    alias_method_chain :exec_queries, :translations
  end
end

Public Instance Methods

exec_queries_with_translations() click to toggle source
# File lib/translatable/active_record/relation.rb, line 18
def exec_queries_with_translations
  if @translate_records
    exec_queries_without_translations.map(&:translate)
  else
    exec_queries_without_translations
  end
end
translate() click to toggle source
# File lib/translatable/active_record/relation.rb, line 13
def translate
  @translate_records = true
  self.eager_load(:translations)
end