- Mastering Symfony
- Sohail Salehi
- 263字
- 2021-07-16 11:28:59
Custom bundles versus AppBundle
When we use AppBundle
as a code base, the app/
directory of our project can be seen as part of AppBundle
. Sure, it has other files and folders that take care of other bundles available in the /vendor
directory, for example, but we can benefit a lot from the app/
folder.
For example, if you look at the MyBundle/Resources
folder, you will find two subfolders named Resources/config/
and Resources/views/
, which hold service definitions (and other required settings in the future) and template files for that bundle.
However, with AppBundle
, we already have a folder named app/
, so conveniently, we can use the available app/config
for our configuration needs and app/Resources/views
for our templates. Using this approach, referencing these files are much easier.
Compare the render()
method in indexAction()
of each controller. In the AppBundle
controller, we simply referenced the template file without mentioning the name of the bundle. When there is no bundle name, Symfony by default looks in the app/Resources/views
directory to find the required template:
return $this->render('default/index.html.twig');
To check the contents of the app/Resources/views
directory use the following command:
$ tree app/Resources/views/ app/Resources/views/ ├── base.html.twig └── default └── index.html.twig
In MyBundle
, we have to mention the bundle name in the reference:
return $this->render('MyBundle:Default:index.html.twig');
We got two elements of MVC so far: Controller and View. Let's have a look at the big picture that we have now:

- Go Web編程
- Java逍遙游記
- C++案例趣學
- Mobile Web Performance Optimization
- GraphQL學習指南
- Building a Recommendation Engine with Scala
- Building Mapping Applications with QGIS
- Data Analysis with Stata
- Apache Mesos Essentials
- Elasticsearch for Hadoop
- Webpack實戰:入門、進階與調優
- 智能搜索和推薦系統:原理、算法與應用
- Lift Application Development Cookbook
- 零基礎學Scratch 3.0編程
- Go語言從入門到精通