我有一個用戶模型用於保存所有用戶。在我的應用程序,導師和學生中,用戶有兩種類型,但它們具有相同的結構。Rails has_many關係的動態外鍵
我想做這樣的事情。
has_many :requests, :foreign_key => mentor? ? 'mentor_id' : 'student_id', :class_name => 'Request'
我有導師?方法,但它給了我一個method_missing錯誤。我假設它是因爲它在dynamic_matchers.rb
這尋找的方法是錯誤它給
/var/lib/gems/1.9.1/gems/activerecord-3.2.13/lib/active_record/dynamic_matchers.rb:55:in 'method_missing': undefined method 'mentor?' for #<Class:0x00000001b40630> (NoMethodError)
有沒有辦法去了解這一點沒有做一個單獨的型號爲學生和導師?我覺得看到他們都使用相同的領域是沒有必要的。
你爲什麼要不同的ID列?這個邏輯應該僅在用戶模型上,而不是在請求上。此外,你想要的是不可能的:D – jokklan 2013-05-12 20:58:04