EmberJS;无法创建关系记录

时间:2015-01-15 10:41:05

标签: ember.js ember-data

我有一个用户,聊天和消息模型,可以在我们的应用中创建聊天功能。

用户:

messages:      DS.hasMany 'message'
chat:          DS.hasMany 'chat'

聊天:

users:         DS.hasMany 'user'
messages:      DS.hasMany 'message'

消息:

user:          DS.belongsTo 'user'
chat:          DS.belongsTo 'chat'
message:       DS.attr 'string'

在这种情况下,我已经有一个chat和一个user对象,而我想要做的就是在此聊天中创建一个属于发送用户的message

我使用以下方法:

controller = Ember.ObjectController.extend Ember.Evented,
  needs:      'application'
  app:        Ember.computed.alias 'controllers.application'
  actions:
    sendMessage: ->
      content = Ember.$('.new-message input').val()

      message = @store.createRecord 'message', message: content
      message.set 'user', @get 'app.model.user'      
      message.set 'chat', @get 'model'

      message.save().then =>
        console.log "done"

但是会导致以下错误:

Uncaught Error: Assertion Failed: Cannot call get with 'isEmpty' on an undefined object

使问题消失的两件事:

  • 删除message.set 'chat', @get 'model'
  • 在数据库中创建一条消息(如果它不是第一条正在创建的消息,则它可以正常工作)

0 个答案:

没有答案