Rails 4, создавать несколько объектов - как это разрешить?
Как разрешить эти параметры:
contacts: [
{:value => 'value', :contacts_type => 'contact_type'},
{:value => 'value', :contacts_type => 'contact_type'},
]
Чтобы создать много объектов с помощью действия контроллера в одном запросе JSON?
3 ответа
Как ниже, contacts
будет массив ресурсов с конкретными атрибутами value
а также contacts_type
:
params.permit(contacts: [:value, :contacts_type])
Если вы получаете параметры, подобные следующим:-
:params=>{:xyz => {:contacts => [{:value => 'value', :contacts_type => 'type'}, ..]}}
Затем выполните следующие действия:
params.require(:xyz).permit(contacts: [:value, :contacts_type])
И добавить attr_accessor :contacts
к вашей модели, если contacts
это просто часть имени поля формы.
Обойти это надо
def contact_params
new_params = params.permit(contacts: [:value, :contacts_type])
new_params[:contacts] if new_params
end
Пожалуйста, предложите альтернативное решение, если таковые имеются