我是非常新的ember,我想使用字符串而不是id为一个更漂亮的URL工作。当我手动输入路径example.com/#/Commune时,此路由器代码正常工作。但是当使用{{#linkTo“commune”name}} {{name}} {{/ linkTo}}时,网址正在正确更改,但没有显示(如果我刷新浏览器,则会显示)。任何想法?
JS:
App.Router.map(function() {
this.route('commune', {path: "/:commune_name"});
});
App.CommuneRoute = Em.Route.extend({
model: function(params) {
return App.CommunesController.findProperty('name', params.commune_name);
}
});
如果我这样做:反之亦然。 (链接工作但输入/刷新aint)
App.CommuneRoute = Em.Route.extend({
model: function(params) {
return App.Commune.find(params.commune_name);
}
});
答案 0 :(得分:0)
需要在我的路线中添加序列号:
App.CommuneRoute = Em.Route.extend({
serialize: function(model, params) {
return {
name: model._data.attributes.name
};
},
model: function(params) {
return App.CommunesController.findProperty('name', params.commune_name);
}
});