【问题标题】:Ember adapter and serializerEmber 适配器和序列化器
【发布时间】:2014-11-13 16:20:40
【问题描述】:

我正在使用 ember-cli 构建一个 Ember 应用程序,并作为持久层使用 rails-api + Grape + ActiveModelSerializer 构建一个 HTTP API。我处于一个非常基础的阶段,但我想在继续开发更多 API 和 ember 模型之前以尽可能标准和干净的方式设置我的前端和后端。

我找不到商店制作的关于序列化和反序列化的综合指南,但我阅读了有关 DS.ActiveModelSerializerDS.ActiveModelAdapter 的文档(它们说的相同!)以及它们的父类。

适配器和序列化程序的确切作用是什么?它们之间有什么关系?

考虑到我正在使用的工具,我需要同时实现它们吗?

Grape/ActiveModelSerializer 和 EmberData 都提供自定义。由于我的后端和前端是相互的,而不是其他任何东西,定制哪一方更好?

【问题讨论】:

    标签: serialization ember.js ember-data active-model-serializers grape


    【解决方案1】:

    嗯...哪一方更好是主观的,所以这是我的思考过程:

    一般来说,如果需要设备客户端或该 API 将来被其他方使用,人们会想要一个能够“与任何东西对话”的 API,所以这会建议你配置你的 Ember 应用程序来与你的后端对话。但同样,我认为这是一个主观的问题/答案,因为除了您和您​​的团队之外,没有人能说出在创建应用程序时您正在或可能正在经历的给定场景有什么好处。

    我认为这些天指南对适配器和序列化器 role/usagecustomization 的解释相当不错。

    至于实现它们,可能需要为您的应用程序创建一个适配器来定义一个全局命名空间(如果您有一个)(如果您的控制器位于另一个区域(如 localhost:3000/api/products)之后,则设置命名空间:' api' 否则这不是必需的),或者类似的主机,如果你正在使用 cors,如果你正在使用 cli,你可能希望在环境中设置安全策略以允许连接到其他域的 cors 和类似的东西那。这也可以按模型完成。但同样,所有这些都是主观的,因为它取决于您想要/需要实现的目标。

    【讨论】:

    • 感谢您对我非常笼统的问题的回答。我开始弄脏我的手,最终得到my first more specific problem。如果可以的话,看看.. 是否与适配器有关?
    猜你喜欢
    • 2016-05-28
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多