我需要将数据附加到变量
@celebrity = Celebrity.includes(:category).where('category_id = ?', params[:id])
test =[]
@celebrity.each do |celeb|
@vote = Vote.where('celebrity_id = ?', celeb).count
test << {vote_count:@vote}
end
当我调试&#39; test&#39;,
abort test.inspect
我得到
的结果[{:vote_count=>2}, {:vote_count=>1}, {:vote_count=>0}]
但是,我的问题是如何将vote_count追加到@celebrity,有谁可以帮助我
答案 0 :(得分:2)
你不应该这样做,在表现方面可怕。
如果您正确设置counter_cache
(see ref),您可以按预期在模型实例中立即获得数据
答案 1 :(得分:0)
@celebrity.each do |celeb|
celeb["vote_count"] = celeb.votes.count
end
+ apneadiving是对的。使用counter_caches