Ember部分模型(又名引导程序资源)

Ember partial model (aka bootstrap resource)

本文关键字:引导程序 资源 模型 Ember      更新时间:2023-09-26

是否有一些成员数据替代框架可以使用"引导资源"?

当我的ember应用程序加载时,它会从"引导"资源下载初始数据。该资源包含一些基本信息——例如,resource返回图书列表,并且每本书只包含标题和作者姓名。当用户浏览到某本书时,我想下载更多关于这本书的信息并展示出来

问题是,我希望这本书只有一个模型表示(以避免某些BookModel和BookInfoModel之间的同步)。

所以基本上,我想要的是一些BookModel,它保持信息,它只被部分加载(从引导程序资源),如果我请求BookModel本身,它将从服务器加载其余部分。

这有可能吗?

如果我答对了你的问题,下面这样的可能设置应该可以工作,它只会在需要时延迟加载你的BookModelInfo数据:

App.Adapter = DS.RESTAdapter.extend();
App.BookModel = DS.Model.extend({
  bookModelInfo: DS.hasMany('App.BookModelInfo'),
  ...
});
App.BookModelInfo = DS.Model.extend({
  bookModel: DS.belongsTo('App.BookModel'),
  ...
});
App.Adapter.map('App.BookModel', {
  bookModelInfo: {embedded: 'load'}
});

正如你所看到的,我已经定义了一对多关系,因为目前ember数据不支持一对一关系,但我想这种方式也适用于你的用例。

希望能有所帮助。