- 灰烬RC3
- 灰烬数据修订12个
- 把手RC3
我有灰烬数据侧面加载关系上工作很多我的模型,以便我可以像这样模拟sideloaded关系:
// Models
App.Client = DS.Model.extend({
company: DS.attr('string'),
accountNumber: DS.attr('string'),
startDate: DS.attr('mysqlDate'),
// Relationships
campaigns: DS.hasMany('App.Campaign'),
users: DS.hasMany('App.User'),
phones: DS.hasMany('App.Phone'),
addresses: DS.hasMany('App.Address')
});
App.User = DS.Model.extend({
email: DS.attr('string'),
password: DS.attr('string'),
// Relationships
userType: DS.belongsTo('App.UserType'),
role: DS.belongsTo('App.Role'),
clients: DS.hasMany('App.Client'),
phones: DS.hasMany('App.Phone'),
addresses: DS.hasMany('App.Address')
});
<!-- template -->
<script type="text/x-handlebars" data-template-name="user/index">
<h2>{{email}}</h2>
<h5>Clients</h5>
<ul>
{{#each client in model.clients}}
<li>{{client.company}}</li>
{{/each}}
</ul>
</script>
这个奇妙的作品...除了每10分之一重新加载左右。每隔一段时间,sideloaded关系(在这种情况下hasMany
关系model.clients
)不呈现给模板,而所有其他模型属性(而不是关系)呈现给模板。奇怪的是,它每隔一段时间就会这样做。
我不太清楚怎么还我可以设置这个问题的JS小提琴,所以我想问问:
凡在调用堆栈可能我设置一个断点,看看有什么属性将实际得到渲染?
我在使用{{debugger}}
问题的模板中,我只是不确定最好的地方是检查调用堆栈中的应用程序状态。
你可以用Ember.View包装你的模板,并在那里“渲染”,那里你有一个缓冲区可用,是你在找什么?我还将ember.js更新到rc3,以防万一 – intuitivepixel 2013-04-27 00:01:00
我确实升级了,谢谢,但没有任何改进。它变成了模型,但在渲染钩子中调试是一条有趣的线。感谢您的建议。 – ianstarz 2013-04-28 04:37:56
如果你冒险,你可以尝试这个铬扩展(仍在开发中,但不是全功能,但有时仍然有用)https://github.com/tildeio/ember-extension看看 – intuitivepixel 2013-04-28 21:21:32