从服务器重新加载数据
Reloading ember data from server
转换到页面后,我试图从服务器重新加载存储数据。
在这种情况下,我所指的过渡是从索引页到特定页面的id。
下面是我的代码:App.Board = DS.Model.extend({
title: DS.attr('string'),
boardItems: DS.hasMany('BoardItem'),
});
App.BoardItem = DS.Model.extend({
title: DS.attr('string'),
board: DS.belongsTo('Board')
});
App.BoardIndexRoute = Ember.Route.extend({
model: function() {
return {
title: 'Boards List',
boardItems: this.store.find('board')
}
}
});
App.BoardShowRoute = Ember.Route.extend({
model: function(params) {
// this.store.reloadRecord('BoardItem'); - tried this, didn't work :(
var boardData = this.store.findById('board', params.board_id);
return boardData;
}
});
的结果是:索引-加载一个板列表,用空boardItems数组(我不想加载索引上的所有数据)
然后点击一个链接到一个特定的板,过渡到它,但数据是空的,没有请求到服务器。
我尝试了各种方法重新加载它,但都失败了…
这里是调试信息,如果它可能有帮助:
DEBUG: Ember: 1.5.1 Ember .js:3521
DEBUG:烬数据:1.0.0-beta.7。f87cba88 ember.js: 3521
DEBUG: Handlebars: 1.1.2 ember.js:3521
调试:jQuery 2.1.0
谢谢!
查找记录:如果您提供一个数字或字符串作为
store.find()
的第二个参数,Ember Data将尝试检索具有该ID的记录。这将返回一个带有请求记录的承诺:
App.BoardShowRoute = Ember.Route.extend({
model: function(params) {
// Providing both the model name, and board identifier
// Make sure the parameter exists.
// console.debug('My board identifier is', params.board_id');
return this.store.find('board', params.board_id); // => GET /boards/:board_id
}
});
相关文章:
- 正在等待呈现图表,直到加载数据为止
- ng绑定和ng href问题.ng href未从控制器加载数据
- 单击按钮时加载数据
- 在reactjs组件中预加载数据
- Highcharts可以从服务器加载数据,但不能更新
- AngularJS promise在加载数据之前得到解决
- 在Knockout JS中搜索从DB加载数据的项目
- 如何在angular js中使用$emit后重新加载数据
- 构建多个图表时,HighCharts加载数据的速度较慢
- 加载初始网站后在后台加载数据
- ExtJS网格未从Ext.data.XmlStore加载数据
- 数据表 AJAX 筛选器重新加载数据
- select2 使用 AJAX 加载数据不能选择任何选项
- 在 Metro 风格应用中启动时加载数据
- 需要帮助使用 AJAX 和其他一些东西加载数据
- Vue 不加载数据
- 向右滚动加载数据
- 为SEO的数据绑定JS预加载数据
- mysql循环-预加载数据
- 无法使用JSON加载数据表