如何强制路由参数的输入?

时间:2013-03-27 17:18:44

标签: javascript model-view-controller ember.js javascript-framework

我已设置以下路径:

this.resource('areaManagement',    { path: '/management/areas' }, function() {
  this.route('assign',    { path: '/assign' });
  this.route('new',       { path: '/new' });
  this.route('subdivide', { path: '/:id' });
});

如果你想创建一个新区域,你会转到/management/areas/new,但在测试中,我不小心去了/management/areas/create并发现没有抛出任何错误。然后我意识到,这条路径与subdivide动态段匹配。

如果这是动态细分的工作方式,那么从技术上讲,/management/areas/anythingyouwant将是有效/可识别的路径。如果model()不是整数,我总是可以实现:id挂钩和重定向/错误,但是否有办法让路由器强制执行此操作?

1 个答案:

答案 0 :(得分:0)

我认为“简单”的解决方法是通过添加

来添加新的嵌套级别
path: '/id' 

拥有类似

的网址
/management/areas/id/1

不一定理想但会帮助你。