3 回答

TA貢獻1884條經(jīng)驗 獲得超4個贊
Rails 3.1.1的一個已知問題破壞了此功能。如果您首先遇到此問題,請嘗試升級,此問題已在3.1.2中修復(fù)。
你好親近 問題是您濫用了:source選項。:source應(yīng)該指向多態(tài)的belongs_to關(guān)系。然后,您要做的就是為要定義的關(guān)系指定:source_type。
對Widget模型的此修復(fù)應(yīng)允許您完全按照自己的意愿進行操作。
class Widget < ActiveRecord::Base
has_many :widget_groupings
has_many :people, :through => :widget_groupings, :source => :grouper, :source_type => 'Person'
has_many :aliens, :through => :widget_groupings, :source => :grouper, :source_type => 'Alien'
end

TA貢獻1780條經(jīng)驗 獲得超1個贊
有很多:through和多態(tài)不能一起使用。如果您嘗試直接訪問它們,它將引發(fā)錯誤。如果我沒記錯的話,您必須手寫widget.people和push例程。
我不認為這是一個錯誤,只是還沒有實現(xiàn)。我想我們會在功能中看到它,因為每個人都有可以使用它的情況。
- 3 回答
- 0 關(guān)注
- 637 瀏覽
添加回答
舉報