【问题标题】:How to refactor route endpoints into ORM structure?如何将路由端点重构为 ORM 结构?
【发布时间】:2020-12-22 01:45:55
【问题描述】:

我什至不确定到底是什么构成了端点以及如何将其转换为 ORM。我是 Angular 的新手,但据我了解,端点是当您从服务器获取数据时,无论是在线 API 还是使用 SQL 的数据库查询。 从我的研究来看,ORM 基本上使代码更高级,并且摆脱了对 SQL 的需求,但是你是怎么做到的呢?如果没有 SQL,它是使用 URL 对在线 API 的请求怎么办?

为了澄清,我正在开发一个使用 Angular 的网站。有一个数据库、一个 API 和一个 UI,API 从在线 API 和数据库中提取数据。所以我的问题是关于如何重构这两种类型的端点。

【问题讨论】:

    标签: mysql angular typescript api orm


    【解决方案1】:

    ORM 是一种处理对象的方法,让框架负责将对象转换为 DB 所需的方式或从 DB 到对象的数据。 UI 与它无关。这只是后端的数据层或数据层的问题。也许我们可以继续说,即使是控制器部分或后端的其他部分也不需要了解 ORM。

    所以你的抽象是

    1. 无论您在 Model 类方面谈论的 DB 类型如何
    2. 无论数据来自DB还是后端其他在线API调用,最终也是一个模型对象,可以发送到UI

    UI 层不需要也不应该知道您的后端如何获取 UI 所需的详细信息。所以结构应该更多地基于常识、领域、您的需求等,而不是后端如何获取数据。

    这同样适用于 API 端点。以有意义的方式为您的应用程序创建它们。示例:

    // this might be some of the endpoints required for a e commerce site
    
    /product/recommendations      // returns recommended products for a user
    /product/categories           // returns categories of products
    /user/getCartItems            // returns cart items of user
    /orders/cancel                // cancel a order
    
    

    查看 api 端点如何完全不知道后端如何处理/检索数据

    【讨论】:

      猜你喜欢
      • 2020-11-17
      • 2010-10-25
      • 1970-01-01
      • 1970-01-01
      • 2012-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多