У меня есть ActiveJob с некоторыми параметрами, которые были сериализованы с помощью GlobalID.Eager Load in ActiveJob
При выполнении задания, как я могу загрузить некоторые связанные модели?
class Foo
has_one :bar
end
class Bar
belongs_to :foo
field :some_field
end
class MyJob < ApplicationJob
queue_as :default
def perform(foo)
# How can I eager load bar ?
foo.bar.some_field # Hits the DB again without eager loading
end
end
Это всего лишь простой пример, но в моем приложении я должен был бы eager_load несколько моделей, и smetimes У меня даже есть N + 1 проблемы без него (на разных примерах, без нетерпеливого нагрузки)
Итак, в принципе, [globalID] (http://edgeguides.rubyonrails.org/active_job_basics.html#globalid) трюк становится бесполезным, если нам нужна Eager Loading? –