我有以下包含多值电子邮件属性的 javascript 对象:
var contact = {
email = {
home = (
"me@home.com"
);
work = (
"me@work.com"
);
};
emailCount = 2;
firstName = Micah;
lastName = Alcorn;
}
我需要构建以下 JSON 以发送到 Rails 服务器:
processedContact.params = {
'contact[first_name]':'Micah',
'contact[last_name]':'Alcorn',
'contact[emails_attributes][0][label]':'home',
'contact[emails_attributes][0][account]':'me@home.com',
'contact[emails_attributes][1][label]':'work',
'contact[emails_attributes][1][account]':'me@work.com',
};
我不知道如何克服以下问题:
function processContact(contact) {
processedContact = {};
processedContact.params = {
'contact[first_name]':contact.firstName,
'contact[last_name]':contact.lastName,
// ????????
};
for (each in contact.email) {
// this can be used to produce the email.account values, but not the email.labels
}
}
如果我静态输入,我的 Rails 应用程序会正确处理它。但是让我知道是否有更好的方法是在服务器端处理它,这样我就不必手动构造 JSON。谢谢!