首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到ember-data - record (404)

找不到ember-data - record (404)
EN

Stack Overflow用户
提问于 2012-12-18 13:44:28
回答 1查看 1.1K关注 0票数 2

人们是如何处理ember-data中的404个错误的?

目前,rest适配器以这种方式处理错误:

代码语言:javascript
复制
  didError: function(store, type, record, xhr) {
    if (xhr.status === 422) {
      var data = JSON.parse(xhr.responseText);
      store.recordWasInvalid(record, data['errors']);
    } else {
      store.recordWasError(record);
    }
  },

在尝试保存模型时,我可以判断该模型是否无效,但在执行find或findById操作时,我无法判断是否未找到该记录。

人们是如何处理404错误的?

EN

回答 1

Stack Overflow用户

发布于 2012-12-18 20:09:04

我所做的是在服务器中有404个页面,实际上只有JSON字符串提到了错误。然后在Ember里处理它们。也许有更好的方法,但这很容易,不会浪费你太多的时间。

例如:

代码语言:javascript
复制
[{"msg":"Data Not Found"}]

在FindAll或查找适配器的方法中,如下所示

代码语言:javascript
复制
DS.Adapter.create({
    find: function(store, type, id) {
        var url = type.url;
        url = url.fmt(id);

        jQuery.getJSON(url, function(data) {
            // data is a Hash of key/value pairs. If your server returns a
            // root, simply do something like:
            // store.load(type, id, data.person)
            if(data.msg!=="Data Not Found")
                store.load(type, id, data);
        });
    }
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13926999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档