gpt4 book ai didi

ruby - 增加散列中的值

转载 作者:数据小太阳 更新时间:2023-10-29 07:45:48 25 4
gpt4 key购买 nike

我有一堆帖子,里面有类别标签。我试图找出每个类别被使用了多少次。

我将 Rails 与 mongodb 一起使用,但我认为我不需要从数据库中获取类别的出现,因此 mongo 部分无关紧要。

这是我目前的情况

@recent_posts = current_user.recent_posts #returns the 10 most recent posts@categories_hash = {'tech' => 0, 'world' => 0, 'entertainment' => 0, 'sports' => 0}    @recent_posts do |cat|       cat.categories.each do |addCat|         @categories_hash.increment(addCat) #obviously this is where I'm having problems       end     endend

帖子的结构是

{"_id" : ObjectId("idnumber"), "created_at" : "Tue Aug 03...", "categories" :["world", "sports"], "message" : "the text of the post", "poster_id" : ObjectId("idOfUserPoster"), "voters" : []}

我愿意听取关于如何获取类别计数的建议,但我最终会想要获取选民计数,所以在我看来最好的方法是增加 categories_hash,然后添加选民.length,但一次只有一件事,我只是想弄清楚如何增加散列中的值。

最佳答案

如果您不熟悉 map/reduce 并且不关心扩展,这不如 map/reduce 优雅,但对于小型站点应该足够了:

@categories_hash = Hash.new(0)
current_user.recent_posts.each do |post|
post.categories.each do |category|
@categories_hash[category] += 1
end
end

关于ruby - 增加散列中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3410881/

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