Ember.js 余烬数据:创建新记录的最佳实践
我想知道在ember数据应用程序中创建新记录时的最佳实践是什么 巫婆跟随策略被认为是最佳实践 战略1Ember.js 余烬数据:创建新记录的最佳实践,ember.js,ember-data,Ember.js,Ember Data,我想知道在ember数据应用程序中创建新记录时的最佳实践是什么 巫婆跟随策略被认为是最佳实践 战略1 模型钩子从这个.store.createRecord()返回承诺 每个模板字段都由模型挂钩映射到模型返回 动作保存模型 战略2 每个模板字段都映射到控制器属性 操作调用this.store.createdRecord()并保存模型 我最近在《灰烬松弛》杂志上问了一个类似的问题。我得到的答案可以归结为:使用策略1,结合 从插件的自述文件: 确保在完成模型后进行清理 您停用的任何管线都将检查模
- 模型钩子从这个.store.createRecord()返回承诺李>
- 每个模板字段都由模型挂钩映射到模型返回
- 动作保存模型
- 每个模板字段都映射到控制器属性
- 操作调用this.store.createdRecord()并保存模型
我最近在《灰烬松弛》中问了一个类似的问题。我得到的答案可以归结为:使用策略1,结合 从插件的自述文件: 确保在完成模型后进行清理 您停用的任何管线都将检查模型,以确保其未保存。如果是,它将回滚该模型或从存储中删除该模型,具体取决于之前是否已持久化
这要视情况而定,我使用这两种策略 对于具有
belongsTo
和具有许多关系的非常复杂的模型,我通常使用策略#2,因为大多数时候清理一些控制器值比删除所有模型和依赖关系(当用户取消操作时)更简单。我在编辑带有hasMany
的模型时,大多数时候也使用策略2,因此hasMany
不会被直接更改
对于简单的模型,我会使用策略#1,并确保在用户不保存更改时删除模型(例如在willTransition
hook中)
编辑:在@Grapho发表评论之前,这个ember插件可能很方便:
这要看情况而定,我使用两种策略
对于具有belongsTo
和具有许多关系的非常复杂的模型,我通常使用策略#2,因为大多数时候清理一些控制器值比删除所有模型和依赖关系(当用户取消操作时)更简单。我在编辑带有hasMany
的模型时,大多数时候也使用策略2,因此hasMany
不会被直接更改
对于简单的模型,我会使用策略#1,并确保在用户不保存更改时删除模型(例如在willTransition
hook中)
编辑:在@Grapho发表评论之前,这个ember插件可能很方便:
这两种策略都非常有效,各有优缺点。但是,您的策略#2可能不应该直接绑定控制器属性。而是使用一个容易清理的虚拟/代理对象。这两种策略都是完全有效的,都有各自的优缺点。但是,您的策略#2可能不应该直接绑定控制器属性。而是使用可以轻松清理的虚拟/代理对象。