pol*_*ick 6 ember.js ember-data
我试图找出如何在我的余烬路线中使用slug(我的模型的属性)来获得更清晰的网址.
我希望我的路线看起来像这样:
http://www.server.com/#/newsitems/newsitem-title-in-slug-format/1
Run Code Online (Sandbox Code Playgroud)
代替:
http://www.server.com/#/newsitems/1/1
Run Code Online (Sandbox Code Playgroud)
如您所见,我想用实际的slug属性替换newsitem的id.这是我的Newsitem模型的样子:
App.Newsitem = DS.Model.extend({
slug: DS.attr('string'),
title: DS.attr('string'),
summary: DS.attr('string'),
});
Run Code Online (Sandbox Code Playgroud)
slug属性以这种格式接收一个干净的文本属性: title-in-slug-format
这是我目前的路由器地图:
App.Router.map(function(){
this.resource('newsitems', function(){
this.resource('newsitem', {path:':newsitem_id'});
});
});
Run Code Online (Sandbox Code Playgroud)
我试着更换newsitem_id用newsitem_slug,但是这是行不通的.还有其他建议吗?
非常感谢迈克尔指出我正确的方向.但是,我认为这是因为我在rc-1版本的ember中工作,我没有为此重写模型钩子.我唯一要做的就是:
App.NewsitemRoute = Ember.Route.extend({
serialize: function(model, params) {
return { newsitem_id: model.get('slug') };
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3530 次 |
| 最近记录: |