Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 单个模型的多个序列化程序_Ember.js_Ember Data - Fatal编程技术网

Ember.js 单个模型的多个序列化程序

Ember.js 单个模型的多个序列化程序,ember.js,ember-data,Ember.js,Ember Data,我有一个有很多提醒的用户模型 首次创建用户时,我希望嵌入提醒。当它被更新时,我不希望它的提醒被嵌入。我该怎么做 我的策略是创建一个自定义的新用户序列化程序,其中包含DS.EmbeddedRecordsMixin和 在我的UserAdapters createRecord方法中使用它,但我无法让它工作。这并不理想,但你可以做到- `import DS from 'ember-data'` `import ApplicationSerializer from './application'` Us

我有一个有很多提醒的用户模型

首次创建用户时,我希望嵌入提醒。当它被更新时,我不希望它的提醒被嵌入。我该怎么做

我的策略是创建一个自定义的新用户序列化程序,其中包含DS.EmbeddedRecordsMixin和


在我的UserAdapters createRecord方法中使用它,但我无法让它工作。

这并不理想,但你可以做到-

`import DS from 'ember-data'`
`import ApplicationSerializer from './application'`

UserSerializer = ApplicationSerializer.extend DS.EmbeddedRecordsMixin,

    attrs:
        reminders: {}

    serialize: (snapshot, options) ->
        if snapshot.attr('embedRemindersFlag')
            @attrs.reminders.embedded = 'always'
        @_super(snapshot, options)

`export default UserSerializer`
EmbedderEmbedderEmbedderSflag必须是模型的一个属性,所以snapshot会拾取它,但我单独实现了一个临时选项,它可以防止属性被发送到服务器

embedRemindersFlag: DS.attr 'string', {defaultValue: false, transient: true}

你最后做了什么?
embedRemindersFlag: DS.attr 'string', {defaultValue: false, transient: true}