我有一个Client
模型。在查看/clients
时,我想返回一个简单的客户序列化,只需几个汇总值(比如total_unbilled
和total_owing
)。查看/clients/1
时,我想返回客户端的完整序列化,包括其所有嵌套任务和费用。后端已经配置为执行此操作。
当用户查看/clients
时,我不想返回所有客户端的完整序列化,因为可能有数百个客户端可能存在大量数据。我想在用户查看特定客户端时仅在需要时加载该额外信息。
处理此用例的最佳方法是什么,使用Ember Data可以多种方式对模型进行序列化?我知道它会缓存客户端的初始表示形式,因此如果用户首先访问/clients
,如果用户随后访问/clients/1
,则无法尝试获取客户端的完整序列化。有没有明智的方法来覆盖这个?或者我是否必须在客户端有两个不同的Ember数据模型(例如Client
和MiniClient
)?
答案 0 :(得分:1)
老实说,最简单的方法是使用两种不同的型号,或者不要将Ember Data用于迷你客户端。听起来他们不仅仅是用来获取信息。
我可能只为迷你客户端做POJO,为完整客户端做Ember Data(因为缓存在那时最有用)Ember without Ember Data