我对在表格中创建和插入数据感到困惑。
例如,我有user-table,其中保存了所有用户。付款表应保存用户A的所有付款。付款不会更新。一旦用户A注册,他就会填写一份表格,在那里他输入付款并保存,仅此而已。 (我知道这听起来很奇怪,但我的数据库是基于文件的统计分析。一旦加载文件,分析就完成了,分析中的数据(简单数字)必须存储。所以pro文件大约有1000个数字存储,什么都不会更新)。引用键是用户的id。 所以,它应该是这样的:
class PaymentsTable < ActiveRecord::Migration
def change
create_table :payments do |t|
t.integer :user_id
t.float :sum
end
end
end
我的问题是,我不明白如果我指定了t.float,我只能保存用户A的10个支付者:只有一次总和。
提前致谢
答案 0 :(得分:0)
您想要输入用户所做的每笔付款,并且您希望将这些付款相加,那么您当前的方式是错误的。
你可以创建这样的付款表,
类PaymentsTable&lt; ActiveRecord的::迁移
def change
create_table:付款做| t |
t.integer:user_id
t.float:金额
结束
结束
所以,如果您按照
之类的查询对此金额列求和user_payment = Payment.where(:user_id =&gt; params [:user_id))。first.sum(&amp;:amount)