RoR でモデルの関係を検証するにはどうすればよいですか? たとえば、私は3つのモデルを持っています:
class Post < ActiveRecord::Base
belongs_to :blog
has_one :user, :through => :blog
validates :blog_id, :presence => true
end
class Blog < ActiveRecord::Base
belongs_to :user
has_many :posts, :dependent => :destroy
end
class User < ActiveRecord::Base
has_many :blogs
has_many :posts, :through => :blogs
end
そして私のコントローラーで:
@post = current_user.blogs.find(params[:post].delete(:blog_id)).posts.build(params[:post])
しかし、投稿を作成したいときは次のようになります。
Can't mass-assign protected attributes: blog_id
params ハッシュから blog_id を削除しているので、このエラーは発生しませんか? 私の Post モデルで User.blogs への blog_id アクセサリを検証するより良い方法は何ですか?