У меня есть таблица has_many_association. Например, Пользователь has_many подписки. На странице индекса активного администратора я показываю несколько вычисляемых полей, для которых мне требуется вызвать user.subscription.last. Так как я звоню это несколько раз. Поэтому из-за этого наш сервер перегружается. Это было обработано на странице индекса, так как показывает только 30 записей. Но при экспорте в CSV наш сервер перегружен из-за нескольких запросов. Я использую примерно 15 запросов для одного пользователя.
Проблема здесь в том, что я должен проверить действительную подписку для печати ее кода. Также я не могу поместить запрос where в scoped_collection, потому что он будет загружать только данные пользователя для действительных подписок. Так как решить эту проблему ???????
def scoped_collection
end_of_association_chain.includes(:subscriptions, :blogs)
end
index do
column :email
column "referrer" do |user|
subscription = user.subscriptions.valid.first
subscription.referrers.first.code if subscription
end
column "blog_id" do |user|
user.blog.id if user.blog
end
end
Пользователь has_many подписки и подписка has_many рефереры, я хочу первый код реферера