2011-04-22 47 views
1

我遵循Michael Hartle的書「Rails教程」,並使用戶跟隨通過關係表工作的系統,使用follower_idfollowed_id將所有內容放入關係模型或添加新模型

我想添加另一種關係,這次是一個收藏系統。我最好將列添加到關係表中並使用它,還是應該創建一個新模型來保存偏好關係?

+0

請詳細說明您的問題,如果你想創建兩個模型用戶和最愛之間的關係? – 2011-04-22 09:38:18

+0

按照這個鏈接,你會得到這裏關於關係的一切[Rails Relationship](http://guides.rubyonrails.org/association_basics.html) – 2011-04-22 09:46:19

+0

我重拍了這裏的問題,因爲我實際上試過了,感謝任何見解 – 2011-04-23 08:53:22

回答

1

用戶外鍵列我不你認爲你的問題有一個明確的答案。

但是爲了簡單起見,我會考慮只用一個Connection表標誌

  • is_followed
  • is_favorite

特別是如果你只喜歡跟着人,驗證成爲了很多更輕鬆。仍然允許在您的模型中容易訪問器

class Person < ActiveRecord::Base 

    ... 

    has_many :favorites, :through => :connections, :conditions => { :is_favorite => true }, :source => ... 
    has_many :followers, :through => :connections, :conditions => { :is_followed => true }, :source => ... 
    has_many :followee, :through => :connections, :conditions => { :is_followed => true }, :source => ... 
-1

和外鍵關係,你可以聲明的方式是我只好寫t.reference:用戶在喜歡的遷移文件,如果u想在喜歡的表

+0

我已經添加了這裏發生的代碼,並會感謝和幫助,謝謝。 http://stackoverflow.com/questions/5755887/rails-actionviewtemplateerror-undefined-method-model-name-for-nilclasscl – 2011-04-23 08:52:53