【问题标题】:Structure of an API REST with Symfony3使用 Symfony3 的 API REST 结构
【发布时间】:2016-08-30 11:13:24
【问题描述】:

我在我的项目中使用 Symfony,我需要构建一个 API REST。

从技术上讲,我知道如何构建 API Rest,但我不知道如何围绕 API REST 构建其他捆绑包。

例如:

src/
    ApiBundle
    CommentBundle
    PageBundle

ApiBundle 允许创建/删除/更新(等)页面或评论。实体(和表单)是否必须在 ApiBundle 或 CommentBundle/ PageBundle 中?

【问题讨论】:

    标签: rest symfony


    【解决方案1】:

    Symfony 最佳实践 - Organizing Your Business Logic:

    对于大多数项目,您应该将所有内容都存储在 AppBundle 中。在这里,您可以创建任何想要组织事物的目录

    基本上,您不应该为几乎每个实体(或组或实体)制作单独的包,例如 PageComment,因为它们无论如何都会紧密耦合。所以没有任何收获。

    实际上,这是对捆绑包的最大误解之一。你不应该创建一个单独的包,除非它独立于其他包并且它的目标是可重用和非常通用的代码。

    顺便说一句,我个人更喜欢将域层(例如实体)保留在任何捆绑包之外。这样,它甚至不会与框架耦合。

    【讨论】:

    • 就我个人的经验而言:当 symfony2 出现时,建议为几乎所有东西创建捆绑包...在 Symfony3 中这更灵活,因为我们可以在 generate:bundle 命令中选择捆绑包是否跨多个应用程序共享。
    • @ousmane 你之前的推荐是对的,但是很快就被社区拒绝了,所以他们的最佳实践也很快改变了。 S3 出来已经很久了。那是行不通的。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多