Разрешающий массив рельсов хешей 5 - PullRequest
0 голосов
/ 20 декабря 2018

Моя версия rails 5, и у меня есть запрос param вроде этого,

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

Я застрял в разрешении параметров new_filter в контроллере rails, я пытаюсь использовать следующий код,

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

и все еще получаю ошибку.Но это не так при наличии массива строк в ключе new_filter.Например: ["грустно", "asdasd"].Как получить вложенную структуру в качестве белого списка атрибута?

1 Ответ

0 голосов
/ 20 декабря 2018

В файле модели для сегмента попробуйте добавить строку

accepts_nested_attributes_for :new_filters

, что позволит вам передать эти атрибуты.

https://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html

...