6: De voorbeeldapp
De phlo-demo-cms repository is een blog/tijdschrift op SQLite, gebouwd om gekopieerd te worden.
6.1: Wat zit erin?
- Zeven modellen, waaronder
article,author,categoryentopic. - Elke relatie type: ouder (author, category), veel (topics), kind (comments).
- Afbeeldingen uploaden voor covers en avatars, en een
wysiwygbody. - Eén draagbare database: elk model slaat op in
data/cms.db.
6.2: Eén-opdracht installatie
De repo wordt geleverd met een kant-en-klaar dataset (data/cms.db plus de geüploade covers, avatars en bijlagen), dus er is geen build- of seed-stap: kloon en serveer. Om de dataset vanaf nul te regenereren (de seeder is volledig deterministisch en heeft geen afhankelijkheden):
php www/app.php seed::run
seed::run verwijdert en maakt elke tabel opnieuw aan, dus het is altijd veilig om opnieuw te beginnen. De eerste HTTP-aanroep bouwt de bronnen automatisch.
6.3: Maak het van jou
Kopieer de repository, vervang de modellen in modules/, werk %app->models en %app->menu bij, en pas de CREATE TABLE-instructies in seed.phlo aan om overeen te komen. Vergeet de relatie-kolomconventie uit het hoofdstuk Relaties niet: de vreemde sleutel is de korte naam van het gerelateerde model.