如何在Ember中表示具有多个不同序列化的模型?

时间:2014-10-06 03:02:04

标签: serialization ember.js ember-data

我有一个Client模型。在查看/clients时,我想返回一个简单的客户序列化,只需几个汇总值(比如total_unbilledtotal_owing)。查看/clients/1时,我想返回客户端的完整序列化,包括其所有嵌套任务和费用。后端已经配置为执行此操作。

当用户查看/clients时,我不想返回所有客户端的完整序列化,因为可能有数百个客户端可能存在大量数据。我想在用户查看特定客户端时仅在需要时加载该额外信息。

处理此用例的最佳方法是什么,使用Ember Data可以多种方式对模型进行序列化?我知道它会缓存客户端的初始表示形式,因此如果用户首先访问/clients,如果用户随后访问/clients/1,则无法尝试获取客户端的完整序列化。有没有明智的方法来覆盖这个?或者我是否必须在客户端有两个不同的Ember数据模型(例如ClientMiniClient)?

1 个答案:

答案 0 :(得分:1)

老实说,最简单的方法是使用两种不同的型号,或者不要将Ember Data用于迷你客户端。听起来他们不仅仅是用来获取信息。

我可能只为迷你客户端做POJO,为完整客户端做Ember Data(因为缓存在那时最有用)Ember without Ember Data