在Ember模型中自定义请求url
Custom request urls in Ember model
我正在尝试使用Ember数据与已经构建的REST api。它可以很好地用于顶级路由,例如,我有api端课程的路由,如下所示:
app.get('/courses', app.controllers.courses.findAll)
app.get('/courses/:id', app.controllers.courses.findById)
以上工作很好,我可以很容易地获得数据烬数据。但是问题出现在有多个关卡的路线上。例如,课程可以有多个主题,而主题可以有多个讲座,因此它们的路由在api端是这样定义的。
主题:
app.get('/courses/:course_id/topics', app.controllers.topics.findAll)
app.get('/courses/:course_id/topics/:id', app.controllers.topics.findById)
讲座:
app.get('/courses/:course_id/topics/:topic_id/lectures', app.controllers.lectures.findAll)
app.get('/courses/:course_id/topics/:topic_id/lectures/:id', app.controllers.lectures.findById)
因此,如果我想在课程中获得所有讲座,我需要指定课程id和主题id(不是在查询中,而是在url主体中,正如您可以从后端api中的url结构中看到的)。
在Ember中,我有课程,主题和讲座的模型,但我不知道如何指定自定义url,以便Ember Data在我发出请求时可以使用这些url。
一种方法可以是手动发出ajax请求,但这种方法将不会在Ember数据存储中填充记录。
或者我可以在Ember中定义模型之间的关系,但这也需要更改后端api,这对我来说不是一个选择。
那么有什么好的方法来解决这个问题吗?
我正在使用:
灰烬:v1.6.0-beta.2
Ember-Data: v1.0.0-beta.7
避免Ember数据,没有它Ember工作得很好。
如果你真的想要使用它,使用ajax调用,然后使用store.pushPayload('type', data)
来侧载数据到商店,如果你真的想要它在商店。
相关文章:
- 在Javascript中查找请求URL
- 获取在 <脚本 src >标记中添加的请求 URL 的状态
- 自 2012 年 6 月 12 日以来,“未定义”随机附加到我网站上 1% 的请求 URL 中
- 在 $.ajaxSetup 转换器中获取 ajax 请求 URL,以便进行日志记录
- 桌面小部件使用的 $.getJSON 不会从浏览器请求 URL
- 从请求 URL 中删除参数
- 尝试使用 SharePoint 2013 的 REST 服务器和 CSOM 时,“未为此应用程序的请求 URL 部署应用
- ASP.Net MVC:HTTP错误414.请求URL太长
- 如何在JavaScript中HTTP请求URL
- 两个ajax请求url(成功/失败)
- Durandal:传递参数以查看请求url
- AuthorizedHandler阻止了错误的请求!url: / socket . io /
- Javascript加密和安全:避免检查内部请求url
- 是否有一种方法来获得get请求URL使用JavaScript?(不是浏览器中的当前URL)
- 如何从选项中获取angularjs的http请求url
- 设置一个小表单的请求URL
- 从请求url获取哈希参数
- 如何以字符串形式输出JSON请求URL
- 获取完整的JSON请求URL以进行故障排除
- 在Ember模型中自定义请求url