我想建立一个中型网站,其中还包括一个移动网站和一个 API。因为我已经有一些 Symfony 的经验,所以我想在它之上构建这个项目。
但是,我不知道如何构建我的项目。也许有一些指导方针如何解决这个问题?
将每个组件构建为单独的 Bundle 是否是个好主意?例如 CoreBundle、APIBundle、WebsiteBundle 和 MobileWebsiteBundle,而 CoreBundle 将包含所有模型和验证以及其他捆绑控制器和视图?
还是有完全不同的方式?
我想建立一个中型网站,其中还包括一个移动网站和一个 API。因为我已经有一些 Symfony 的经验,所以我想在它之上构建这个项目。
但是,我不知道如何构建我的项目。也许有一些指导方针如何解决这个问题?
将每个组件构建为单独的 Bundle 是否是个好主意?例如 CoreBundle、APIBundle、WebsiteBundle 和 MobileWebsiteBundle,而 CoreBundle 将包含所有模型和验证以及其他捆绑控制器和视图?
还是有完全不同的方式?
您不需要将所有代码放入包中。事实上,你放在那里的代码越多,你就越会将它耦合到框架中。
考虑将一些与 Symfony 无关的代码提取到单独的命名空间中,并将包视为 PHP 代码和 Symfony 框架之间的粘合剂。
例如:
如果您决定将实体放在捆绑包之外,则必须在app/config/config.yml中配置新映射:
doctrine:
orm:
mappings:
Bossa:
type: annotation
is_bundle: false
dir: %kernel.root_dir%/../src/Acme/Entity
prefix: Acme\Entity\
alias: Acme