Tôi muốn chuyển đổi một POST từ Webob MultiDict thành từ điển lồng nhau. Ví dụ.Cách chuyển đổi một MultiDict thành từ điển lồng nhau
Vì vậy, từ một POST của:
'name=Kyle&phone.number=1234&phone.type=home&phone.number=5678&phone.type=work'
đến một multidict;
[('name', 'Kyle'), ('phone.number', '1234'), ('phone.type', 'home'), ('phone.number', '5678'), ('phone.type', 'work')]
để một cuốn từ điển lồng nhau
{'name': 'Kyle',
'phone': [
{
'number': '12345',
'type': 'home',
},{
'number': '5678',
'type': 'work',
},
Bất kỳ ý tưởng?
EDIT
tôi đã kết thúc giải nén các phương pháp variable_decode
từ gói formencode như được đăng bởi Will. Thay đổi duy nhất được yêu cầu là làm cho danh sách rõ ràng, Ví dụ:
'name=Kyle&phone-1.number=1234&phone-1.type=home&phone-2.number=5678&phone-2.type=work'
Điều nào tốt hơn vì nhiều lý do.
Ngoài ra hãy xem tại hạt tiêu từ Dự án Pylons: http://docs.pylonsproject.org/projects/peppercorn/en/latest/ nó đòi hỏi phải rõ ràng hơn trong khi xây dựng các biểu mẫu của bạn, nhưng cho phép tùy ý làm tổ. –