0

テーブルへのデータの作成と挿入について少し混乱しています。

たとえば、すべてのユーザーが保存されるユーザーテーブルがあります。支払いテーブルは、ユーザー 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 :sum を 1 回だけ指定した場合にのみ、ユーザー A の 10 の支払いを節約する方法がわからないことです。

前もって感謝します

4

1 に答える 1

0

ユーザーが行った各支払いを入力し、それらの支払いを合計したい場合、現在の方法は間違っています。

このような支払表を作成できます

class PaymentsTable < ActiveRecord::Migration
def change
create_table :payments do |t|
t.integer :user_id
t.float :金額
end
end

したがって、この金額列を次のようなクエリで合計すると

user_payment = Payment.where(:user_id=>params[:user_id)).first.sum(&:金額)

于 2013-05-04T08:49:52.707 に答える