Well hi there! This repository holds the code and script for the EasyAdminBundle tutorial on SymfonyCasts.
It has been modified from the original with the following:
- Attributes instead of Annotations
- AssetMapper instead of Webpack
- Foundry version 2
- All libraries at their latest version, using rector
- survos/core-bundle: easier route parameters
- survos/deployment-bundle: Some code related to deployment on the Survos dokku server
- @todo: smoke tests, crawler tests and panther tests.
If you've just downloaded the code, congratulations!!
To get it working, follow these steps:
Download Composer dependencies
Make sure you have Composer installed and then run:
First time:
git clone git@github.com:survos-sites/easyadmin-cast.git && cd easyadmin-cast
symfony proxy:domain:attach easyadmin-cast
Then
composer install
bin/console doctrine:schema:update --force
bin/console doctrine:fixtures:load -n
symfony server:start -d
symfony open:local Now log in as admin@example.com adminpass
composer req survos/crawler-bundle --dev
composer req zenstruck/browser --devDatabase Setup
The code comes with a docker-compose.yaml file and we recommend using
Docker to boot a database container. You will still have PHP installed
locally, but you'll connect to a database inside Docker. This is optional,
but I think you'll love it!
First, make sure you have Docker installed and running. To start the container, run:
docker-compose up -d
Next, build the database, execute the migrations and load the fixtures with:
# "symfony console" is equivalent to "bin/console"
# but its aware of your database container
symfony console doctrine:database:create --if-not-exists
symfony console doctrine:schema:update --force
symfony console doctrine:fixtures:load
The symfony binary can be downloaded from https://symfony.com/download.
(If you get an error about "MySQL server has gone away", just wait a few seconds and try again - the container is probably still booting).
If you do not want to use Docker, just make sure to start your own
database server and update the DATABASE_URL environment variable in
.env or .env.local before running the commands above.
Start the Symfony web server
You can use Nginx or Apache, but Symfony's local web server works even better.
To install the Symfony local web server, follow "Downloading the Symfony client" instructions found here: https://symfony.com/download - you only need to do this once on your system.
Then, to start the web server, open a terminal, move into the project, and run:
symfony serve
(If this is your first time using this command, you may see an
error that you need to run symfony server:ca:install first).
Now check out the site at https://localhost:8000
Have fun!
If you have suggestions or questions, please feel free to open an issue on this repository or comment on the course itself. We're watching both :).
And as always, thanks so much for your support and letting us do what we love!
<3 Your friends at SymfonyCasts