首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Symfony2中构建项目?

如何在Symfony2中构建项目?
EN

Stack Overflow用户
提问于 2011-07-10 22:28:09
回答 4查看 6.5K关注 0票数 18

我想问一下,在Symfony2中构建一个具有前端和后端的项目的最好方法是什么?在其他版本的Symfony中,这很容易实现,因为您可以创建两个应用程序-前端和后端-然后所有的库/模型都将在这些应用程序之间共享。

现在在Symfony2中,一切都是捆绑在一起的。对我来说,真正不清楚的是我如何表示“两个”应用程序,前端和后端。我应该创建两个命名空间-前端和后端吗?我希望将我的实体放在一个地方,而不是从两个应用程序访问它们。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-07-12 05:29:09

只需使用一个应用程序,为您的项目创建一个AdminBundleBackendBundle或其他任何东西,并在security.yml中使用防火墙和访问控制列表为这两个应用程序创建单独的路由。

不需要创建单独的应用程序目录,不需要打乱控制台脚本,或者任何类似的东西。默认情况下,Symfony知道如何查找已注册的任何包的实体和其他资源,因此您将能够轻松地共享它们。

This documentation entry on Security是一个开始学习访问控制和防火墙的好地方。下面是我的安全配置的快速示例:

代码语言:javascript
复制
firewalls:
    main:
        pattern: /.*
        anonymous: true
        form_login: true

access_control:
    - { path: /admin/.*, roles: ROLE_ADMIN }
    - { path: /.*, roles: IS_AUTHENTICATED_ANONYMOUSLY }

如果您希望/和/admin的身份验证完全分离,请创建一个新的管理防火墙:防火墙之间不共享身份验证信息,因此如果您愿意,您可以单独跟踪用户及其会话。

票数 12
EN

Stack Overflow用户

发布于 2011-07-11 19:12:35

我已经尝试了PAStheLoD建议的方法(创建app_backend和web_backend等),但我发现它太麻烦了;您必须记住从控制台将哪个应用程序作为目标,维护单独的引导程序文件,并且目录结构变得混乱。

Symfony documentation Symfony documentation推荐的方法是为每个应用程序提供一个单独的项目。然后你可以为你的源代码创建一个单独的区域,在那里编写大部分(如果不是全部)你的包,然后简单地调整它们在两个应用程序的autoload.php中的包含方式。

例如:

代码语言:javascript
复制
admin_app/
    app/
    bin/
    src/
    web/
frontend_app/
    app/
    bin/
    src/
    web/
common_src/
    Acme/
        AdminBundle/
        DataBundle/
        jQueryBundle/

然后在*_app/app/autoload.php中:

代码语言:javascript
复制
$loader->registerNamespaces(array(
    'Acme' => __DIR__ . '/../../common_src'
));
票数 6
EN

Stack Overflow用户

发布于 2011-07-11 06:32:22

据我所知,你仍然可以用Symfony2做同样的事情。只需将app/重命名为app_frontend并复制到app_backend,也可以同样的方式复制web/。然后,其他的一切都可以捆绑在一起。捆绑包非常强大,因为它们可以包含路由、配置或任何其他内容,因此您可以共享您想要的内容,并完美地隔离您不想共享的内容。

由于重命名的目录,bin/ scripts可能会出现一些问题,但您只需正确配置它们(或者在Symfony的Github站点上提出该问题)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6641647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档