在 Ember 中,所有内容都使用其类型作为名称的一部分进行注册。IE:
App.FoobarController
App.FoobarView
App.FoobarRoute
除了 Ember-Data 模型,它们都只是用它们的根名称来调用。IE
App.User
App.Post
App.Comment
为什么 ember-data 模型会打破这种模式,而不是分别被称为App.UserModel
, ?App.PostModel
App.CommentModel
我意识到我可以为我的模型命名任何我想要的名称,但是如果我继续命名我的用户 model App.UserModel
,那么我的所有 AJAX 请求都将发送到/user_models
并期望响应 JSON 带有user_model
/的根元素user_models
。我也意识到可以注册别名/复数以使这种模式成为可能。
但是,我可以做类似controllerName: 'Foobar'
and之类的事情templateName: 'Foobar'
,Ember 会自动将它们分别解析为FoobarController
and FoobarTemplate
。我还可以定义App.FoobarView
andApp.FoobarController
并且 Ember 知道它们会一起自动配对。也就是说,我希望 AJAX 请求会发生相同类型的魔法,UserModel
以便被重写/users
并启用通过App.store.find( 'User', 123 )
.
在处理模型时是否有理由打破这个约定,或者这只是与 Ember-Data 的疏忽/错误/不一致?