您好,回答这个精彩的问题Ember.js - CRUD scenarios - Specifying View from within a Route find 和 findAll 被提到在模型上使用来自动反序列化 URL。
这个界面是什么样的?它真的是模型而不是 Controller 吗?
举个例子就太好了。
最佳答案
一如既往,文档是一个很棒的起点。看看https://github.com/emberjs/ember.js/blob/master/packages/ember-routing/lib/routable.js#L231-273对于默认的序列化/反序列化方法。
不过你的想法是正确的。
- Ember 采用最接近的动态片段,例如
blog_post_id
- 从末尾删除
_id
,留下blog_post
- 调用
Ember.String.classify('blog_post')
返回 BlogPost - 它在 Ember 命名空间下查找 modelClass,例如应用程序.BlogPost
- 它在该模型上调用 find。例如App.BlogPost.find(1)
编辑:
在回应 Neppord 的评论时,他询问了多个动态片段。 是的,ember-router 目前确实支持单个路由中的多个动态段。
Ember.Route.extend({
route: "/:post_type/:post_id"
})
如果你真的需要它,你就必须编写自己的反序列化/序列化方法。 就我个人而言,我只是使用嵌套动态状态。
Ember.Route.extend({
route: "/:post_type"
post: Ember.Route.extend({
route: "/:post_id"
})
})
关于serialization - EmberJS - find/findAll 与 Route.deserialize 和 Route.serialize 有何关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11409970/