git clone https://github.com/rapemer/SonataDemoBundle.git sonata-demo
cd sonata-demo
composer install
Na konci Vás instalátor provede nastavením databáze a dalších parametrů. Než dokončíte nastavení těchto parametrů, vytvořte ručně databázi (např. pomocí Admineru, PhpMyAdmin nebo z konzole). Jinak dojde na konci instalace k chybě: SQLSTATE[HY000] [1049] Unknown database 'sonata-demo'
.
Pro fajnšmejkry lze samozřejmě vytvořit composer post-script, který po konfiguraci parametrů spustí příkaz php app/console doctrine:database:create
, ale prozatím databázi vytvoříme ručně.
Dump, který nám zobrazí SQL příkazy, které chceme nad databází vykonat:
php app/console doctrine:schema:update --dump-sql
SQL můžeme zkopírovat a spustit ručně nebo spustíme příkaz s parametrem --force:
php app/console doctrine:schema:update --force
Čímž updatujeme databázové schéma ihned a ušetříme si pracnost s ruční prací.
php app/console assets:install
Příkaz nainstaluje veškeré soubory z každého bundlu (umístěno uvnitř složky [BundleName]/Resources/public/*
) do složky web/bundles/[bundlename]/*
Na Windows se soubory kopírují. Na Linuxu můžete přidat parametr php app/console assets:install --symlink
, čímž vytvoříte pouze symbolické odkazy a nedochází tak ke kopírování souborů.
Ze srandy můžete tento příkaz spustit jako php app/console ass:in
. Jedná se o přezdívku, která funguje s jakýmkoli jiným Symfony Commandem. Příkaz php app/console doctrine:generate:entity
tak můžeme zapsat třeba jen jako php app/console do:ge:entity
. Symfony si automaticky doplní názvy a rozpozná, který příkaz chcete spustit. Pokud je více shod, informuje Vás o tom chybovou hláškou a požádá Vás o upřesnění příkazu. Například doctrine:generate:entities
a doctrine:generate:entity
nelze identifikovat pomocí do:ge:en
.
Vytvoření hlavního administrátora:
php app/console fos:user:create --super-admin
Při vyplňování hesla dávejte pozor, bude viditelné na obrazovce terminálu.
php app/console server:run
Následně máme k dispozici URL adresu localhost:8000/admin, kde si můžeme zobrazit administraci a přihlásit se pomocí uživatele vytvořeného v kroku 6.
Defaultně Symfony spouští všechny příkazy v dev
prostředí. Chceme-li zkoušet produkční mód, musíme server spustit pomocí příkazu php app/console server:run -e prod
, což není doporučeno provádět jinde než na localhostu.