【问题标题】:Rails 4 Strong parameters, permit parameters for multiple modelsRails 4 强参数,允许多个模型的参数
【发布时间】:2015-05-08 00:09:33
【问题描述】:

我的 params 哈希具有多个模型的属性,这些模型都是集合的一部分,并且必须创建记录并相互关联。例如

Model Collection 
  has Physical Items
  has Logical Items (takes nested attributes for logical items)
  has Locations 
   etc...

所以即使我的参数哈希被发布到集合控制器,它看起来像

 Parameters: {"collection"=>{"client_id"=>"1",...and other collection params,  "logical_items_attributes"=>{"0"=>{"logical_item"=>"", ... other logical items attributes.}}, "item_1"=>{"item_type_id"=>"1",...},"other_loose_param_1"=>"loose_param_value".. etc...,  "commit"=>"Save"}

必须允许所有这些属性,因为所有记录都必须作为单个事务创建并且必须相互关联。如何通过强参数?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 strong-parameters


    【解决方案1】:

    以下是答案。

    params.permit!
    

    【讨论】:

    • 你应该知道这违背了 params.permit 过滤来自网络的输入的目的。大安全漏洞。
    • 很高兴发布您找到的解决方案,但这是一个坏主意。这基本上只是禁用了强参数功能并公开了数据库中的所有值。
    猜你喜欢
    • 2015-12-13
    • 1970-01-01
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-08
    • 1970-01-01
    • 2013-07-25
    相关资源
    最近更新 更多