Backbone 模型.删除不发送DELETE

kb5ga3dv  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(109)

我有一个书签集合(在我的代码中简称为books),当我调用call @books.remove(book)时,一个DELETE请求从未被发送。我可以看到我的集合更新-模型消失了,但请求没有被发送。POST和GET工作正常。
我正在使用节点、MongoDB和Mongoose。
我有一种感觉,这与我正在使用的ID有关--这肯定让我有点困惑。
我有 Mongoose 的id:“_id”,然后是一个ID,该ID引用了腐烂番茄API的电影ID:“腐烂ID”
下面是我的JSON GET响应的一个示例:

[{"_id":"5484961502c054fb59dea18a","rottenId":771364788,"__v":0}]

下面是我的模型:

class Bookmark extends Backbone.Model
    idAttribute: "_id"
    url: "/api/movies/bookmarks

这是我的收藏:

class BookmarksCollection extends Movies
     model: Bookmark

删除视图中的图书:

book = @books.where({rottenId: id})
@books.remove(book)

以下是控制台中的内容:

我读过其他人有这个问题,例如在下面的帖子,但我似乎不能让他们的解决方案为我工作:
Backbone.js DELETE request not firing
RESTful Express Mongoose & Backbone - Backbone model.remove() not working
backbone model.destroy not triggering a DELETE request

2wnc66cl

2wnc66cl1#

book = @books.findWhere({rottenId: id})
@books.remove(book)

它的作用与它所说的完全一样,它从@books中删除book。但是,从集合中删除模型与从服务器中删除模型没有任何关系。

book = @books.findWhere({rottenId: id})
book.destroy();

这也有从集合中自动移除模型的副作用。

相关问题