按型号ID列表获取骨干收集

Iva*_*llo 0 javascript rest backbone.js

我有一个REST API,提供几个URL:

/rest/messages
Run Code Online (Sandbox Code Playgroud)

提供所有消息.消息是JSON/Backbone模型

{ 
  title: 'foo',
  body : 'bar'
}
Run Code Online (Sandbox Code Playgroud)

要获得单条消息,我有:

/rest/messages/:id
Run Code Online (Sandbox Code Playgroud)

是否可以使用消息ID数组获取Backbone集合?我不想要整个消息列表,只需要我通过ID指定的一些消息.

我可以逐个获取模型并填写Collection,但我想知道Backbone是否有更简洁的方法来执行此操作.谢谢

Cyc*_*one 6

根据文档,您可以将ajax选项传递给fetch调用.因此,您可以将idsas data属性传递给正在完成的提取调用,并根据它,从服务器返回相应的模型.

例如(在进行获取时),

collection.fetch({
  data : {
    message_ids : [1, 3, 5] // array of the message ids you want to retrieve as models
  }
})
Run Code Online (Sandbox Code Playgroud)

在执行的服务器代码中,此message_id数组可以作为parameters(不确定您的名称)访问/rest/messages,从那里您只能返回基于您收到的ID的特定模型message_ids.您唯一需要的是,客户端必须了解所需的所有消息模型的ID.

您可以使用任何数据结构而不是数组来发送message_ids.