我有以下哈希记录用户name
和items_sold
:
{"dave"=>9, "steve"=>20}
我是通过我的Rawdatum Index
行动创建的:
@consolidated_rawdata = Rawdatum.all.group(:user).sum(:items_sold)
我现在要做的是通过一个动作(单击一个按钮)将该对象(dave和steve)中的两个对象保存到一个名为reports
的表中,其中包含两列:{{ 1}}和user
一样:
我怎样才能做到这一点?
答案 0 :(得分:1)
不知道这是否算作单个动作,但您可以像这样迭代哈希:
@consolidated_rawdata.each {|name, items_sold| Report.create(user:
name, items_sold: items_sold)}
答案 1 :(得分:0)
如果一个动作只需单击一下就可以了。我们可以循环抛出哈希并保存记录
我会把它放在像Reports
这样的模型中class Report < ApplicationRecord
#Report.create_consolidated_rawdata
def self.create_consolidated_rawdata
@consolidated_rawdata = Rawdatum.all.group(:user).sum(:items_sold)
@consolidated_rawdata.do |name, items_sold|
Report.create(user: name, items_sold: items_sold)
end
end
end
我希望这有效