ruby-on-rails – Rails入门教程:5.7显示帖子 – 没有禁止的属
发布时间:2020-12-17 01:30:17 所属栏目:百科 来源:网络整理
导读:我一直在关注这个Rails教程: http://guides.rubyonrails.org/getting_started.html 5.7节告诉我,我应该期待一个ActiveModel :: ForbiddenAttributesError 问题是,我没有得到错误.它没有permit关键字. 我的create方法如下所示: def create @post = Post.new
我一直在关注这个Rails教程:
http://guides.rubyonrails.org/getting_started.html 5.7节告诉我,我应该期待一个ActiveModel :: ForbiddenAttributesError 问题是,我没有得到错误.它没有permit关键字. 我的create方法如下所示: def create @post = Post.new(post_params) @post.save redirect_to @post end 我正在使用Rails 4.0和Ruby 2.0.知道为什么强参数安全功能不起作用? 解决方法
文档实际上是误导,你是对的.
如果您按照第5.6章所示编码控制器 def create @post = Post.new(post_params) @post.save redirect_to @post end private def post_params params.require(:post).permit(:title,:text) end 你已经允许使用参数标题和文字了. 下一章(5.7)假设您已经没有使用permit-method. 如果您将第2行更改为: @post = Post.new(post_params) 如截图所示,将抛出错误.此外,第5.7章中的“修复”并没有像您那样定义新的私有方法post_params,而是应用内联修复. @post = Post.new(params[:post].permit(:title,:text)) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |