gpt4 book ai didi

javascript - Backbone 忽略 idAttribute 并设置自己的

转载 作者:行者123 更新时间:2023-11-29 19:49:11 25 4
gpt4 key购买 nike

我从 API 创建新模型,API 有一个 idAttribute ID。这是我的模型:

class Video extends Backbone.Model
idAttribute: 'ID'
urlRoot: inbox.api.url + "/program"

收藏:

class Videos extends Backbone.Collection
model = Video
localStorage: new Backbone.LocalStorage 'inbox.video'
url: inbox.api.url + "/program"

这里我将模型添加到集合中:

_.each data, (o) =>

model = collection.get o.ID
if model != undefined
model.set o
else
collection.create o

问题是创建的模型的id不是返回数据中的ID所以每次都创建一个模型,因为它在寻找o.ID时没有找到模型

这是迭代之一的o:

ChannelID: "b5f52a36-b154-4232-ace0-4075c384bee1"
ID: "10fa83a6-8508-40a3-a901-a40cad2041da"
LastWriteUTC: "2013/08/19 02:51:14 PM"
Name: "Moments_of_Everyday_Life.mp4"
Publisher: "Marthin"
Size: 1043200

为什么模型的 id 属性没有设置正确的 ID?

谢谢

最佳答案

您的问题可能是在评估 model = Video 时它尚未定义。尝试在初始化方法中分配模型

例如

var  Videos = Backbone.Collections.extend({

localStorage: new Backbone.LocalStorage('inbox.video'),
url: inbox.api.url + "/program",

initialize: function () {
this.model = Video;
}
})

关于javascript - Backbone 忽略 idAttribute 并设置自己的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18316433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com