gpt4 book ai didi

ruby - 如何将单个对象变成 ruby 中可枚举的对象

转载 作者:数据小太阳 更新时间:2023-10-29 08:15:38 26 4
gpt4 key购买 nike

我有一个方法可以返回单个对象或对象集合。我希望能够在该方法的结果上运行 object.collect,无论它是单个对象还是已经是一个集合。我该怎么做?

profiles = ProfileResource.search(params)
output = profiles.collect do | profile |
profile.to_hash
end

如果 profiles 是单个对象,当我尝试对该对象执行 collect 时会收到 NoMethodError 异常。

最佳答案

小心扁平化方法,如果 search() 返回嵌套数组,则可能会导致意外行为。

profiles = ProfileResource.search(params)
profiles = [profiles] if !profiles.respond_to?(:collect)
output = profiles.collect do |profile|
profile.to_hash
end

关于ruby - 如何将单个对象变成 ruby 中可枚举的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/79352/

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