据我了解,DS.FixtureAdapter
默认情况下不使用序列化程序。这是对的吗?
我主要是尝试使用夹具适配器进行自定义转换。我看到DS.JSONSerializer
调用了转化here的反序列化方法,但超过here in the fixture adapter serializer
属性设置为null
。它看起来像所有夹具适配器的find方法返回夹具directly。
相比之下,DS.RESTAdapter
有ajax
方法,claims可以从序列化程序调用{{1}}的正确风格。但是,我不知道这是做什么的。这在源头发生了什么?
是否有一个属性或其他东西我可以覆盖以使用序列化器挂起夹具适配器? (我在我的fixture适配器中尝试extract
,但这似乎阻止了所有数据的加载。)或者我是否正在考虑修改源是唯一的解决方案?如果是这样,知道REST适配器调用serializer: DS.JSONSerializer
/ extractSingle
的位置/方式将是惊人的。
我感谢任何帮助。我有点死路一条。
答案 0 :(得分:2)
extractSingle
的{{1}}方法中调用 extractArray
/ extract
。
JSONSerializer
一些花哨的“元编程”使得它们很难找到,因为它们不会出现在grep中。
[更新]:从var specificExtract = "extract" + requestType.charAt(0).toUpperCase() + requestType.substr(1);
return this[specificExtract](store, type, payload, id, requestType);
内调用主extract
方法。