1
Rails非常新...我正在構建讓人們比較照片的功能,而且我無法確定如何構造它。理想情況下,我想要有一個「比較」表,它保存了比較照片的ID以及比較它們的用戶的記錄,但我不太確定這是否需要使用「belongs_to」功能與否。如果是這樣,我如何指定每個比較屬於兩張單獨的照片?使用Rails,不知道我是否應該使用belongs_to
Rails非常新...我正在構建讓人們比較照片的功能,而且我無法確定如何構造它。理想情況下,我想要有一個「比較」表,它保存了比較照片的ID以及比較它們的用戶的記錄,但我不太確定這是否需要使用「belongs_to」功能與否。如果是這樣,我如何指定每個比較屬於兩張單獨的照片?使用Rails,不知道我是否應該使用belongs_to
下面的has_many, :through => Model
結構會讓你在連接表上增加一些屬性,例如: 'comparing_user_id'。
class Photo < ActiveRecord::Base
has_many :appearances
has_many :users, :through => :appearances
end
class Appearance < ActiveRecord::Base
belongs_to :photo
belongs_to :user
end
class User < ActiveRecord::Base
has_many :appearances
has_many :photos, :through => :appearances
end
看起來像外觀是比比較更適當和描述性的名稱。命名非常重要。 – 2012-03-12 01:38:41
我想你沒有得到這個問題。它被命名爲比較,因爲它是一個包含* 2 *照片和用戶的模型。 – 2012-03-12 02:02:01
@JakubHampl這是正確的,但我認爲使用:through參數可能仍然是完成這項工作的關鍵。我會玩弄它,看看我得到了什麼.... – 2012-03-12 02:04:49