我正在开发一个应用程序来计算债务以及谁欠谁等等。
目前它的工作原理是这样的:
create_table "debts", :force => true do |t|
t.string "amount"
t.integer "payer_id"
t.integer "payee_id"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "people", :force => true do |t|
t.string "name"
t.integer "bank"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
class Debt < ActiveRecord::Base
attr_accessible :amount, :payee_id, :payer_id
belongs_to :payee, :class_name => 'Person'
belongs_to :payer, :class_name => 'Person'
end
class Person < ActiveRecord::Base
attr_accessible :amount, :payee_id, :payer_id
has_many :debts_owed, :class_name => Debt, :foreign_key => "payee_id"
has_many :debts_to_pay, :class_name => Debt, :foreign_key => "payer_id"
end
它正在工作,但我知道必须有一种更简单的方法来表示同一个模型的多个关联?我一直在阅读 has_and_belongs_to_many 这看起来是正确的,但老实说我迷路了。
任何帮助,将不胜感激!
谢谢