关于模板文件的位置 模板文件放在src目录下只有一种原因:你的模板文件属于“可重复使用的Bundle(Reusable Bundle)”! 如果是上面这种情况,比如Bundle名称是AcmeBlogBundle,那么模板文件的位置通常是"src/Acme/Bundle/BlogBundle/Resources/views"。但是这种情况的前提是,你的Bundle是可重复使用的,即可以直接放到别的项目中使用。 如果不是这种情况(通常情况下不是,除非你在开发一个第三方Bundle,比如FOSUserBundle这样),那么模板文件放到"app/Resource/views"下则是符合Symfony的惯例(convention)和推荐的。 关于Bundle Best Practice Create only one bundle called AppBundle for your application logic 如上(摘自Symfony官方文档),Symfony官方的最佳实践(Best Practice)推荐一个应用只需要创建一个Bundle(AppBundle)就够了。其实用Symfony命令创建应用时,这个Bundle就已经建好了。 如何判断是否需要创建一个Bundle? 当你有多个项目,能够用到同样一种应用逻辑(Domain Logic)的时候,你可以把这一套应用逻辑作为一个独立的Bundle抽象出来。 独立的Bundle的应用逻辑不可以依赖其他的Bundle,否则其就不是独立的Bundle了。 当你创建独立(可重复使用)的Bundle的时候,自然,包括与其相关的模板、配置文件等都可以放到其自己的文件结构下。 参考如下独立(可重复使用)Bundle的文件结构(摘自Symfony官网文档) <your-bundle>/ ├─ AcmeBlogBundle.php ├─ Controller/ ├─ README.md ├─ LICENSE ├─ Resources/ │ ├─ config/ │ ├─ doc/ │ │ └─ index.rst │ ├─ translations/ │ ├─ views/ │ └─ public/ └─ Tests/ 最后,附上Symfony关于最佳实践(Best Practice)的链接网址 Symfony Best PracticesBest Practices for Reusable Bundles
关于模板文件的位置
模板文件放在src目录下只有一种原因:你的模板文件属于“可重复使用的Bundle(Reusable Bundle)”!
如果是上面这种情况,比如Bundle名称是AcmeBlogBundle,那么模板文件的位置通常是"src/Acme/Bundle/BlogBundle/Resources/views"。但是这种情况的前提是,你的Bundle是可重复使用的,即可以直接放到别的项目中使用。
如果不是这种情况(通常情况下不是,除非你在开发一个第三方Bundle,比如FOSUserBundle这样),那么模板文件放到"app/Resource/views"下则是符合Symfony的惯例(convention)和推荐的。
关于Bundle
如上(摘自Symfony官方文档),Symfony官方的最佳实践(Best Practice)推荐一个应用只需要创建一个Bundle(AppBundle)就够了。其实用Symfony命令创建应用时,这个Bundle就已经建好了。
如何判断是否需要创建一个Bundle?
当你有多个项目,能够用到同样一种应用逻辑(Domain Logic)的时候,你可以把这一套应用逻辑作为一个独立的Bundle抽象出来。
独立的Bundle的应用逻辑不可以依赖其他的Bundle,否则其就不是独立的Bundle了。
当你创建独立(可重复使用)的Bundle的时候,自然,包括与其相关的模板、配置文件等都可以放到其自己的文件结构下。
参考如下独立(可重复使用)Bundle的文件结构(摘自Symfony官网文档)
最后,附上Symfony关于最佳实践(Best Practice)的链接网址
Symfony Best Practices
Best Practices for Reusable Bundles