我正在用Rails 4强大的参数构建一个web应用程序.

在构建管理后台控制器时,我想知道允许所有模型属性的最佳方式是什么?

现在,我写了这样一篇文章:

def user_params 
  params.require(:user).permit(User.fields.keys)
end

你觉得有更好的办法吗?

推荐答案

如果有人需要Rails 6,甚至没有与控制器链接的模型,您可以使用:

before_action :accept_all_params

private

def accept_all_params
  params.permit!
end

完成了,现在你可以玩了? 你想要多少就有多少!

Ruby-on-rails相关问答推荐

在Ruby on rails中,重复访问ActiveRecordModel返回相同的对象:预期行为还是错误?

如何在 JR gem 中指定每个资源的最大页面大小配置

Rails 使用多个外键创建/构建

Rails - 如何从模型中查询 has_many

BigDecimals 的总和最终成为整数 [Ruby on Rails]

在 Rails 3.2 中更新多行

如何从 Rails 路由中删除控制器名称?

如何将 Ruby 哈希转换为 XML?

如何独立测试模型的回调方法?

如何在 Rails 应用程序中使用长 id?

Rails 成语避免在 has_many 中重复:通过

如何在 rspec 测试中输出变量?

对象不支持此属性或方法 Rails Windows 64bit

Rails Rake 任务 - 访问模型类

redirect_to 和 render 是可交换的吗?

find、where 和 find_by_id 有什么区别?

如何检测rails是否在根url?

如何为 Rails 控制器添加延迟以进行测试?

如何删除特殊字符?

设置EDITOR或BUNDLER_EDITOR环境变量