2011-09-09 42 views
6

tôi đã một doc làm bằng:CouchDB: chèn một mảng mới vào một tài liệu

{ 
"_id": "00001.74365CF0449457AA5FB52822DBE1F22A", 
"_rev": "1-1b976f3adb75c220aff28b4c69f41e18", 
"game": "UT411", 
"guid": "74365CF0449457AA5FB52822DBE1F22A", 
"sid": "00001", 
"playerinfo": [ 
    { 
     "timestamp": "1315503699.777494167", 
     "name": "Elisa", 
     "ip": "87.66.181.166", 
     "gear": "FMAOSTA", 
     "weapmodes": "01000110220000020000", 
     "isp": "ADSL-GO-PLUS", 
     "geoloc": "Hotton:50.266701:5.450000", 
     "sid": "00001" 
    } 
    ] 
} 

những gì tôi muốn đạt được thêm thông tin để playerinfo mảng để có doc tôi nhìn như thế này

{ 
"_id": "00001.74365CF0449457AA5FB52822DBE1F22A", 
"_rev": "1-1b976f3adb75c220aff28b4c69f41e18", 
"game": "UT411", 
"guid": "74365CF0449457AA5FB52822DBE1F22A", 
"sid": "00001", 
"playerinfo": [ 
    { 
     "timestamp": "1315503699.777494167", 
     "name": "Elisa", 
     "ip": "87.66.181.166", 
     "gear": "FMAOSTA", 
     "weapmodes": "01000110220000020000", 
     "isp": "ADSL-GO-PLUS", 
     "geoloc": "Hotton:50.266701:5.450000", 
     "sid": "00001" 
    }, 
    { 
     "timestamp": "1315503739.234334167", 
     "name": "Elisa-new", 
     "ip": "87.66.181.120", 
     "gear": "FMAGGGA", 
     "weapmodes": "01000110220000020000", 
     "isp": "ADSL-GO-PLUS", 
     "geoloc": "Hotton:50.266701:5.450000", 
     "sid": "00001" 
    } 
    ] 
} 

có cách nào để thực hiện điều này với PUT html không?

cảm ơn!

Trả lời

7

Câu trả lời đơn giản là tìm nạp tài liệu JSON, /example_db/00001.74365CF0449457AA5FB52822DBE1F22A sau đó sửa đổi nội dung, sau đó PUT trở lại máy chủ, quay lại /example_db/00001.74365CF0449457AA5FB52822DBE1F22A.

CouchDB hỗ trợ kỹ thuật tắt, được gọi là update function. Nguyên tắc là như nhau, ngoại trừ CouchDB sẽ lấy tài liệu, thực hiện bất kỳ thay đổi nào bạn thực hiện, sau đó lưu trữ lại một lần nữa — tất cả ở phía máy chủ.

Tôi khuyên bạn nên bắt đầu bằng kỹ thuật đơn giản, cũ hơn. Tiếp theo, bạn có thể cấu trúc lại để sử dụng hàm _update phía máy chủ khi cần thiết.

Các vấn đề liên quan