2012-07-27 36 views
0

我試圖創建一個多態的投票之間的關係可以由用戶提交和適用於文章。我的代碼Rails基本多態性

class Vote < ActiveRecord::Base 
    attr_accessible :value, :voteable_id, :voteable_type 
    belongs_to :voteable, :polymorphic => true 
end 
class User < ActiveRecord::Base 
    has_many :votes, :as => :voteable 
end 
class Article < ActiveRecord::Base 
    has_many :votes, :as => :voteable 
end 

<Vote id: 1, value: 1, created_at: "2012-07-27 03:13:14", updated_at: "2012-07-27 03:13:14", voteable_id: nil, voteable_type: nil> 

從在軌文件通過http://guides.rubyonrails.org/association_basics.html#polymorphic-associations

我覺得我的代碼設置正確,但是我有一個有點麻煩,正確地觸發它,即看,實際上,我怎麼創建投票對象與文章或用戶的正確定義關係?

回答

0

我能夠做到這一點,我錯誤地設置了voteable_type屬性。

0

是votable_type是字符串嗎? 下一個例子應該可以正常工作..

@user.votes.new :value => 1 
    @user.save 

+0

是的,以上是正確的謝謝。我沒有正確命名.votes,但我想通了。 polym非常有用 – John 2012-07-28 20:25:04