我尝试创建投票之间的多态关系可以由用户提交并应用于文章。我的代码
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
查看rails文档我觉得我的代码设置正确但我在触发它时遇到了一些麻烦,即如何实际创建一个与文章或用户正确定义关系的投票对象?
答案 0 :(得分:0)
我能够完成这项工作,我错误地设置了voteable_type
属性。
答案 1 :(得分:0)
votable_type是字符串吗? 下一个示例应该正常工作..
@user.votes.new :value => 1
@user.save