2012-07-27 57 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