私はこのクラスを持っています:
class Payment < ActiveRecord::Base
attr_accessible :amount, :invoice_id
belongs_to :invoice
validates :amount, :numericality => { :greater_than => 0, :less_than_or_equal_to => :maximum_amount }, :if => "invoice.present?"
private
def maximum_amount
invoice.total if invoice.present?
end
end
上記のコードは機能します。payment
しかし、2 人のユーザーが同時に新しいレコードを保存して、請求書の合計を超えないようにするにはどうすればよいでしょうか?
どういうわけかデータベースレベルでこれを行うことは可能ですか?
助けてくれてありがとう。