我正在使用can.Model
通过id
检索数据:
Invoice = can.Model({
findAll: 'GET /invoices',
create : "POST /invoices",
update : "PUT /invoices/{id}",
destroy : "DELETE /invoices/{id}"
},{});
导航到
/invoices
时,结果如预期的那样,例如:[
0: {
"ID": "1",
"Client": "Client1",
},
1: {
"ID": "2",
"Client": "Client2"
}
]
但是,使用
Invoice.findAll
检索并记录到控制台的数据看起来像这样,对列表中的每个元素重复相同的数据项:[
0: {
"ID": "1",
"Client": "Client1"
},
1: {
"ID": "1",
"Client": "Client1"
}
]
服务器的响应是正确的,那么为什么将其解释为相同项目的列表?
最佳答案
当数据的id字段不同于id
时,应使用id
字段指定它。例如,如can.Model
中的documentation for .NET
所述,通常使用Id
。在这种情况下,必须将id字段定义为ID
:
Invoice = can.Model({
id: 'ID',
findAll: 'GET /invoices',
create : "POST /invoices",
update : "PUT /invoices/{id}",
destroy : "DELETE /invoices/{id}"
},{});