4

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"
    }
]

服务器的响应是正确的,那么为什么它被解释为相同项目的列表呢?

4

1 回答 1

5

当数据的 id 字段不同于 时id,应使用该id字段指定。例如,正如文档can.Model中提到的那样.NET,通常使用Id. 在这种情况下,id 字段必须定义为ID

Invoice = can.Model({
    id: 'ID',
    findAll: 'GET /invoices',
    create  : "POST /invoices",
    update  : "PUT /invoices/{id}",
    destroy : "DELETE /invoices/{id}"
},{});
于 2012-06-26T18:09:51.753 回答