Tôi đã thực sự tìm kiếm và tôi đã không tìm thấy một ví dụ hợp lý về việc sử dụng trình nối tiếp để nhận các đối tượng từ một phản hồi JSON được định dạng khác. Lý do tôi không thay đổi định dạng của phản hồi JSON được nêu tại đây http://flask.pocoo.org/docs/security/#json-security.Ember Dữ liệu và ánh xạ các đối tượng JSON
Tôi không giỏi lắm với javascript, vì vậy tôi đã gặp khó khăn trong việc tìm hiểu các móc trong serialize_json.js hoặc có lẽ tôi nên sử dụng ánh xạ (tôi không biết). Vì vậy, đây là một ví dụ về phản ứng JSON của tôi cho nhiều đối tượng:
{
"total_pages": 1,
"objects": [
{
"is_completed": true,
"id": 1,
"title": "I need to eat"
},
{
"is_completed": false,
"id": 2,
"title": "Hey does this work"
},
{
"is_completed": false,
"id": 3,
"title": "Go to sleep"
},
],
"num_results": 3,
"page": 1
}
Khi ember dữ liệu cố gắng sử dụng này, tôi nhận được lỗi sau:
DEBUG: -------------------------------
DEBUG: Ember.VERSION : 1.0.0-rc.1
DEBUG: Handlebars.VERSION : 1.0.0-rc.3
DEBUG: jQuery.VERSION : 1.9.1
DEBUG: -------------------------------
Uncaught Error: assertion failed: Your server returned a hash with the key total_pages but you have no mapping for it
nào hoàn toàn làm cho khi bạn nhìn vào mã của tôi cho lưu trữ dữ liệu:
Todos.Store = DS.Store.extend({
revision: 12,
adapter: DS.RESTAdapter.create({
mappings: {objects: "Todos.Todo"},
namespace: 'api'
})
});
câu hỏi của tôi là làm thế nào để đối phó với total_pages
, num_results
và page
? Và theo thỏa thuận, tôi có nghĩa là bỏ qua vì vậy tôi chỉ có thể bản đồ mảng objects
.
Tôi sẽ trả về các thuộc tính không được tạo mô hình và tôi không muốn mô hình hóa chúng. –
Tôi có thể sửa đổi phản hồi, nhưng tôi biết tôi có thể làm điều này với JSONSerializer. Tôi chỉ không biết làm thế nào. Tôi có nghĩa là đó là điểm của nó: để lấy JSON là 'không thường xuyên' và chuyển đổi nó thành dữ liệu nào đó có thể sử dụng. –
@Willem de Wit - điều gì về thuộc tính _id và __v được cơ sở dữ liệu thêm vào? Chúng ta có cần mô hình hóa chúng không? – netpoetica