var location = { "location" : {
"name" : $("#user_loc_name").val(),
"street_address" : $("#user_loc_street_address").val(),
"city" : $("#user_loc_city").val(),
"province" : $("#user_loc_province").val(),
"country" : $("#user_loc_country").val(),
"postal_code" : $("user_loc_postal_code").val(),
"public" : $("#user_loc_public").attr('checked')
}};
( ... )
$.post(url, location, success_callback);
Причина, по которой мне нужна эта «вложенная» карта, заключается в том, что я отправляю ее на свой сервер рельсов и надеюсь, что смогу сделать простое обновление атрибутов _ (params [: location]) в контроллере. К сожалению, с этим решением я получаю параметры:
{"location"=>"[object Object]", ...}
Не то, на что я надеюсь. Я надеюсь на:
{"location"=> {"name" => "valforname", "street_address" => "valforstreetadress", ...}, <other params>...}
Если я избавлюсь от «вложенности» и просто отправлю внутреннюю карту, она будет работать нормально, но каждый атрибут отображается отдельно в хэше params, и он просто громоздкий и грязный. Если бы я мог получить всю карту, вложенную под ключ "location", это было бы намного лучше.