按 id 删除主干模型

Remove a backbone model by id?

本文关键字:模型 删除 id      更新时间:2023-09-26

可以通过id删除模型吗?文档说您需要传入模型本身才能将其删除。

所以我需要先获取模型,然后再删除它?我不能只通过 id 删除它吗?

您的意思是从集合中删除模型吗?查看文档,似乎确实需要传入一个真实的模型,但源代码表明您也可以传入模型id或模型cid,并且上述所有内容都应该有效(以及上述所有数组)。

因此,以下所有内容都应该是等效的:

collection.remove(myModel);
collection.remove(myModel.id);
collection.remove(myModel.cid);
collection.remove([myModel]);

但是,我还没有对此进行测试。

只是偶然发现了这篇文章(不要问我怎么做),默认情况下,model的 ID 类似于 c1c23 .如果您希望从集合中按 ID 删除模型,则只需使用以下方法从集合中获取模型:

myCollection.get('c1');

这将返回 ID 为 c1 的模型,如果您希望立即删除它,您只需将返回的模型传递给集合remove()函数。

myCollection.remove( myCollection.get('c1') );