我正在尝试在EmberJS.RC.1构建中构建一个简单的地址簿应用程序,作为学习它的一部分。我的路线没有经过初步检查。这是什么问题? http://jsfiddle.net/Sz6fj/
控制台出错:
未捕获错误:断言失败:无法在未定义的对象上使用'id'调用get - ember-1.0.0-rc.1.js:52
contacts
contacts/new
contacts/<id>
contacts/<id>/edit
代码:
App.Router.map(function(){
this.resource('contacts', {path: '/'}, function(){
this.route('new', {path: '/new'});
this.resource('contact', {path: '/:contact_id'}, function(){
this.route('edit', {path: '/edit'});
});//contact
});//contacts
});
答案 0 :(得分:2)
这是因为你在模型上没有contact_id
。如果您将其更改为主键(id
),那么它将正常工作:http://jsfiddle.net/Sz6fj/1/
contact_id
确实对外键有特殊用法。
答案 1 :(得分:-1)
试试这个:
App.Router.map(function(){
this.resource('contacts', {path: '/'}, function(){
this.route('new');
this.resource('contact', {path: '/contacts/:contact_id'}, function(){
this.route('edit');
});
});
});