首页 > 解决方案 > 允许哈希数组 rails 5

问题描述

我的 Rails 版本是 5,我有这样的请求参数,

{ "segment": {
    "name": "test",
    "new_filters": [
      {"criteria": "sad",
        "other_keys": [{"key": "value"}]
      }, 
      {"criteria": "sad",
        "other_keys1": [{"key1": "value1"}]
      }]
}
}

我被困在允许 rails 控制器中的 new_filter 参数,我正在尝试下面的代码,

params.require(:segment).permit(:name, :people_count, new_filters: [])

并且仍然收到错误。但是,在 new_filter 键中有字符串数组时,情况并非如此。例如:[“悲伤”,“asdasd”]。如何将嵌套结构作为白名单属性?

标签: ruby-on-railsruby-on-rails-5strong-parameters

解决方案


在使用您的属性进行测试时,这对我有用:

params.require(:segment).permit(:name, :people_count, new_filters: [:criteria, other_keys: [:key], other_keys1: [:key1]])

推荐阅读