gpt4 book ai didi

ruby-on-rails - 是否可以在Ruby ActiveAdmin中从索引 block 外部的redis进行批量读取?

转载 作者:行者123 更新时间:2023-12-03 06:42:40 25 4
gpt4 key购买 nike

我在index块中有代码,如果一个类有X个用户,则索引块将循环X次。

index块中,我调用Redis读取值。因此,这将是对Redis的X次调用。

  • 是否可以对Redis进行批量调用,因此我们可以将X用户的ID作为数组传递? (说GetBulkUserNames(<Array_Of_X_Users_Ids>))
    如果是,该怎么做?应该在方法中使用还是可以在index块之外的任何地方?
  • 如何在ActiveAdmin.register中获取X用户的ID,以便将其传递给GetBulkUserNames()
  • 最佳答案

    您可以在 Controller 中添加与集合相关的帮助器。假设集合中的每个X都有一个user_id,那么可能是这样吗?

    controller do
    def cached_user_data
    @data ||= begin
    user_ids = collection.map(&:user_id).uniq
    Hash[user_ids.zip Redis.current.mget(user_ids)]
    end
    end
    end

    index do
    column :cached_user_data { |x| controller.cached_user_data[x.user_id] }
    end

    关于ruby-on-rails - 是否可以在Ruby ActiveAdmin中从索引 block 外部的redis进行批量读取?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60405436/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com