更新时间:2021-07-16 11:29:22
coverpage
Mastering Symfony
Credits
About the Author
About the Reviewers
www.PacktPub.com
eBooks discount offers and more
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Chapter 1. Installing and Configuring Symfony
Why Symfony?
Installation
Composer and Packagist
Summary
Chapter 2. The Request and Response Life Cycle
The big picture
Anatomy of a bundle
Custom bundles versus AppBundle
Creating templates with TWIG
Creating data fixtures
Dynamic templates and controllers
The big picture with MVC
Chapter 3. Setting Up the Environment
The importance of Continuous Integration
Amazon Web Services
Elastic Compute Cloud
Setting up the server
Simple Email Service
Installing PHP tools
Orchestrating the build process
Creating a new job in Jenkins
Running the first build
Do I need CI?
Chapter 4. Using Behavior-Driven Development in Symfony
Getting started with BDD
What is Behat?
Writing a scenario for the about page
The about page does not follow BDD
More about the acceptance test flow in Mink
Defining and prioritizing features
Codeception – the BDD style testing framework
Chapter 5. Business Logic
Choosing between creating a Model or entity
So where does the business logic live?
Reviewing the facts and building entity relationships
Some business logic features and scenarios
TDD and BDD with Codeception
On the CI side of the story
Chapter 6. Dashboard and Security
How security is organized in Symfony?
Handling users with FOSUserBundle
Generating automated data fixtures
The Sonata project
Integrating FOSUserBundle into the admin area
User dashboard
Generating CRUD
Chapter 7. The Presentation Layer
How assets are organized
Asset management
How templates are organized
Let's mold the clay
To navigate or not to navigate
What is Bootstrap?
MopaBootstrapBundle
Creating your first menu
The Dashboard template
Overriding templates
Changing the backend logo
Chapter 8. Project Review
The dashboard's contents
Uploading files with SonataMediaBundle
Team and team members
Adding a notification system
The notification business logic
Chapter 9. Services and Service Containers
How to create a service
How are services beneficial to our projects?
How to call a service
How to configure a service
Why is it called a Dependency Injection Container?
Why didn't we import services inside the bundle?
How to create and load services via autowiring
Organizing services with tags
Chapter 10. Custom User Commands
Creating and registering commands
Creating commands for tasks
Adding interactivity to commands