0

這可能很簡單,但我還沒有能夠圍繞這個問題來解決我的問題。Rails has_many通過單數協會

我有3個表格...(遠遠超過這個),但在這種情況下3。

地方 預訂和 評級

地方的has_many預訂

每個預訂HAS_ONE等級(因爲用戶只需息一次)和belongs_to的(a)把

評級belong_to(一)預定

所以,即使預訂只有一個評級,通過預訂的地方has_many評級,因爲地方也有很多預訂

但這似乎不工作?其餘的都是。

預訂已place_id和評級有一個booking_id,我已經成功與所有其他has_many通過關聯...只是不是has_one?有任何想法嗎?謝謝

此外:如果我將預訂更改爲has_many:評級有效......但預訂每次預訂只能有一個評級......所以這看起來不是什麼好事。

Invalid source reflection macro :has_one for has_many :ratings, :through => :bookings. Use :source to specify the source reflection. 

回答

1

has_many :through對於連接模型上的has_one關係不起作用;看到下面的Rails的門票信息:

如果可能的話,最好的辦法可能是修改你的關係,使房間的預定belongs_to一個等級,而不是has_one評級。

+0

太好了,謝謝!我剛剛從2.3.2上升到2.3.4,現在該協會似乎工作。 – holden 2009-12-01 11:12:40