attr_accessible for Rails 4



你好,我需要使用attr_accessible或类似的东西。我是Ruby on Rails的新手

这是我的post.rb文件

    class Post < ActiveRecord::Base
  has_many :comments
  attr_accessible :body, :title, :published, :author, :author_id
  belongs_to :author, :class_name => "AdminUser"

  validates_presence_of :body,:title
  scope :published, where(:published => true)
  def content
    MarkdownService.new.render(body)
  end
  def author_name
    if author
      author.name
    else
      "Nobody"
    end
  end

end

您需要使用Strong Params:

#app/models/post.rb
class Post < ActiveRecord::Base
  has_many :comments
  belongs_to :author, :class_name => "AdminUser"
  validates_presence_of :body,:title
  scope :published, where(:published => true)
  def content
    MarkdownService.new.render(body)
  end
  def author_name
    if author
      author.name
    else
      "Nobody"
    end
  end

end
#app/controllers/posts_controller.rb
def new
    @post = Post.new
end
def create
    @post = Post.new(post_params)
end
private
def post_params
    params.require(:post).permit(:body, :title, :published, :author, :author_id)
end

Rails4使用强参数而不是attr_accessible。

更多信息请访问doc

相关内容

  • 没有找到相关文章

最新更新