javascript - EmberJS在保存模型时无法调用未定义的方法 'lookup'

标签 javascript ember.js ember-data

我正在使用 Ember Data 1.0.0-beta1 和 EmberJS 1.0.0。

当我进行保存操作时

App.UsersNewController = Ember.ObjectController.extend({
  actions: {
    save: function() {
      var self = this;
      self.content.save().then(function() {
        self.transitionToRoute('index');
      });
    },

    cancel: function() {
      this.content.deleteRecord();
      this.transitionToRoute('index');
    }
  }
});

被调用,它抛出一个 Uncaught TypeError

Uncaught TypeError: Cannot call method 'lookup' of undefined ember-data.js?body=1:6576
DS.RESTAdapter.DS.Adapter.extend.serializerFor ember-data.js?body=1:6576
DS.RESTAdapter.DS.Adapter.extend.createRecord ember-data.js?body=1:6492
_commit ember-data.js?body=1:2490
(anonymous function) ember-data.js?body=1:1991
Ember.EnumerableUtils.forEach ember.js?body=1:1786
DS.Store.Ember.Object.extend.flushPendingSave ember-data.js?body=1:1978
DeferredActionQueues.flush ember.js?body=1:5463
Backburner.end ember.js?body=1:5547
Backburner.run ember.js?body=1:5586
Ember.run ember.js?body=1:5917
ActionHelper.registeredActions.(anonymous function).handler ember.js?body=1:32781
(anonymous function) ember.js?body=1:19003
Ember.handleErrors ember.js?body=1:557
(anonymous function) ember.js?body=1:18995
jQuery.event.dispatch jquery.js?body=1:5096
elemData.handle

编辑:这是路线

App.UsersNewRoute = Ember.Route.extend({
  model: function() {
    return this.store.createRecord('user');
  },

  setupController: function(controller, model) {
    controller.set('content', model);
  }
});

型号:

App.User = DS.Model.extend({
  email: DS.attr('string'),
  password: DS.attr('string'),
  passwordConfirmation: DS.attr('string')
});

商店:

App.Store = DS.Store.extend
  revision: 13
  adapter: DS.RESTAdapter.create()

最佳答案

似乎您的 RESTAdapter 没有对容器的引用。通常,该值会在 ember 创建适配器时设置 - 可能会丢失,因为您正在手动创建实例。尝试更改您的 App.Store 声明以仅使用默认值:

App.Store = DS.Store.extend({})

关于javascript - EmberJS在保存模型时无法调用未定义的方法 'lookup',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18582692/

相关文章:

javascript - 如果我来自外部应用程序,是否检测 React 路由器中的先前路径?

javascript - 如何使用松露测试代码来读取公共(public)变量?

ember.js - 如何记录 Ember 应用程序?

ember.js - JsonAPI 与 Ember Data 的嵌套关系

javascript - Ember 数据 JSONAPIAdapter : fetch nested resources

javascript - 调用 $.each() 函数时上下文发生变化

JavaScript 的 setInterval 和函数何时完成

javascript - 升级emberjs脚本以支持最新版本

javascript - 当选择下 zipper 接时,将 "active"类添加到 Bootstrap 下拉菜单(带有 Ember 链接)

javascript - 使用 FixtureAdapter 时如何使用非 -'id' 字段作为主键?