为什么模型参数不允许除分段ID之外的额外参数?
路线
App.Router.map(function() {
this.route("users");
this.route("userdetails", { path: "users/:user_id"});
}
Route is:
....
model: function(params) {
var user_status = params.user_status;
console.log(user_status);
return params;
}
serialize : function(model) {
return { user_id: model.user_id, user_status : model.user_status }
}
用户状态未定义。
答案 0 :(得分:1)
params
挂钩的model
对象对应于路由的URL。因此,对于user_id为1,它对应于/users/1
。
Ember从路径的这个URL抓取user_id
= 1,并将其作为参数传递给model
钩子。
由于网址中没有user_status
,因此记录为undefined
。
答案 1 :(得分:1)
serialize
挂钩中访问它。
this.route("userdetails", { path: "users/:user_id/:user_status"});
正在做:
serialize: function(model) {
return { user_id: model.user_id, user_status : model.user_status };
}
应该产生正确的参数,网址应该是:
/users/1/online
online
当然是发明的,因为我不知道你的用户状态是什么。
有关伪实现,请参阅here(查看控制台日志)。
希望它有所帮助。