У меня есть следующее определение:Рельсы вложенные атрибуты, проходящие с JQuery
params.require(:sets).permit(:name, zones_attributes: [:latitude, :longitude])
И я хотел бы, чтобы отправить их по AJAX с JQuery, то, я думаю, что я строить это неправильно, потому что я получаю эту ошибку :
Unpermitted parameters: 0, 1
Это то, что я посылаю:
{
"sets"=>{
"name"=>"America",
"zones_attributes"=>{
"0"=>[
"49.95121990866204",
"-117.861328125"
],
"1"=>[
"-33.578014746143985",
"-55.986328125"
]
}
},
"action"=>"create",
"controller"=>"sets"
}
Я думаю, что проблема является «ключевое» значение добавляется до значения широты/долготы. Это, как я добавляю эти значения:
this.zones.push([marker.position.lat(), marker.position.lng()]);
Есть ли способ, чтобы добавить их без ключей? Или я ошибаюсь?
UPDATE
код Ajax:
$.ajax({
type: "POST",
url: '/zone_sets',
data: { zone_sets: { name: map.markerListName ,zones_attributes: map.zones } },
success: function (data) { $("input[name=zone_set]").append(data) },
});
Это то, что я печатаю в своем вопросе после «Это то, что я отправляю» – WhomWhomWhom
Извините, только что поняли^ –
Почему у них нет ключей? Не могли бы вы разместить код для своей формы? У вас есть 'accepts_nested_attributes_for'? Используете ли вы 'fields_for'? – toddmetheny