我正在尝试使用AMD方法构建一个简单的ember应用程序(filebrowser)(是的,我知道@ tomdale对AMD的看法)基于https://github.com/fernandogmar/Emberjs-RequireJS,这似乎很好用,除了我得到一个尝试使用此DS.Model时的奇怪请求URL:
App.File = DS.Model.extend({
primaryKey: "URI",
url: "file",
URI: DS.attr("string")
});
跟:
window.App.DataStore.find(File, encodeURIComponent("/"));
(无关的问题:有没有办法从路由器或控制器中使用get()获取数据存储?Router.get("DataStore")
返回undefined。)
使用标准的未修改的RESTAdapter。结果在以下请求URL中:
http://127.0.0.1:8020/model)s/%2F
我无法弄清楚是什么原因造成的。可推测最后的's'是试图复制模型名称的适配器。我不知道paren来自哪里。
Ember版本:v1.0.0-pre.2-123-ga352c48
Ember-data版本:昨天从https://github.com/emberjs/data/downloads下载的最新版本(无法在任何地方找到版本号)。
这可能与AMD方法有关,还是这是一个无关的问题,最重要的是:我该如何解决?
感谢您的时间。
答案 0 :(得分:0)
我发现使用File.reopenClass()
设置url属性而不是在extend()
中设置它确实解决了问题。这并不能解释为什么生成modelname的默认魔法返回model)s
,但至少它现在解决了我的问题。