这一定是一个很常见的情况,但我无法弄清楚:
我有一个多态评论模型、一个帖子模型和一个用户模型。这是我的关联设置:
class Post < ActiveRecord::Base
has_many :comments, :as => :commentable
end
class User < ActiveRecord::Base
has_many :comments
end
class Comment < ActiveRecord::Base
attr_accessible :content
belongs_to :commentable, polymorphic: true
belongs_to :user
end
现在,我不希望 commentable_id 和 user_id 成为 attr_accesible,因为我不希望它们受到批量分配。我知道解决方案是通过关联创建评论,但我怎样才能为这两个关联做到这一点?
编辑:
示例:我在帖子中,我想创建评论。假设我有 user_id。这样做的方法是:
@post.comments.create(user_id: 1, content: "bla bla")
这将起作用,但我必须使评论的 user_id attr_accessible。出于安全原因,我不想这样做......有没有办法以另一种方式关联评论和用户?
感谢所有帮助者!