Laravel
Ülevaade
Laravel on PHP-veebirakenduste raamistik väljendusrikka ja elegantse süntaksiga. See juhend juhatab sind Laravel-rakenduse juurutamisel NStrim-platvormil algusest lõpuni.
Kiirjuhend
Loo repositoorium mallist
Mine oma töölaual vahekaardile Tools & Deployment. Klõpsa nuppu "New Repository", vali rippmenüüst Laravel mall, sisesta repositooriumi nimi ja alamdomeen ning klõpsa "Create Repository".
Klooni oma repositoorium
git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
Paigalda sõltuvused
composer install
Seadista keskkond
Kopeeri näidiskeskkonnafail ja seadista oma andmebaas (vaata üksikasjalikke juhiseid allpool):
cp .env.example .env
php artisan key:generate
Käivita migratsioonid ja saada üles
php artisan migrate
git add .
git commit -m "Initial setup"
git push origin main
Kohalik arendus Dockeriga
Kui sul ei ole PHP-d kohalikult paigaldatud, saad Laravel-käskude käivitamiseks kasutada Dockerit. Projekt sisaldab Dockerfile'i, mis seadistab kõik vajaliku.
Eeldused
Paigalda Docker Desktop oma operatsioonisüsteemi jaoks (Windows, Mac või Linux).
Käskude käivitamine Dockeriga
Selle asemel, et käivitada php artisan migrate otse, käivitad selle Docker-konteineris:
# Ehita Docker-tõmmis (vaja vaid üks kord)
docker build -t laravel-app .
# Käivita ükskõik milline artisan-käsk
docker run --rm laravel-app php artisan migrate
# Käivita composer install
docker run --rm -v $(pwd):/var/www/html laravel-app composer install
# Interaktiivne shell konteineris
docker run --rm -it -v $(pwd):/var/www/html laravel-app bash
Andmebaasi seadistamine
NStrim-platvorm pakub sulle MySQL/MariaDB andmebaasi. Pead ühenduse loomiseks seadistama oma .env faili õigete andmebaasi sisselogimisandmetega.
Miks andmebaasi seadistada?
Laravel kasutab keskkonnaspetsiifilise konfiguratsiooni salvestamiseks .env faili. Vaikimisi kasutab mall SQLite'i (failipõhine andmebaas), kuid NStrim pakub MySQL-i parema jõudluse ja tegelike stsenaariumitega ühilduvuse tagamiseks.
Samm-sammuline seadistamine
Ava oma .env fail
Ava oma projekti juurkaustas asuv .env fail koodiredaktoris.
Leia andmebaasi sektsioon
Otsi neid ridu (tavaliselt rea 23 ümbruses):
DB_CONNECTION=sqlite
# DB_HOST=127.0.0.1
# DB_PORT=3306
# DB_DATABASE=laravel
# DB_USERNAME=root
# DB_PASSWORD=
Uuenda oma sisselogimisandmetega
Asenda töölaualt saadud sisselogimisandmetega:
DB_CONNECTION=mysql
DB_HOST=db.<session-domain>
DB_PORT=3306
DB_DATABASE=<your-username>
DB_USERNAME=<your-username>
DB_PASSWORD=<your-password>
student01). Täpseid väärtusi kontrolli oma töölaua sisselogimisandmete sektsioonist.Seadistuse näide
Kui sinu kasutajanimi on student01 ja sessiooni domeen on demo.nstrim.app:
DB_CONNECTION=mysql
DB_HOST=db.demo.nstrim.app
DB_PORT=3306
DB_DATABASE=student01
DB_USERNAME=student01
DB_PASSWORD=your-password-from-dashboard
Migratsioonide käivitamine
Migratsioonid on Laraveli viis andmebaasitabelite loomiseks. Pärast andmebaasi seadistamist käivita migratsioonid, et luua vajalikud tabelid:
php artisan migrate
Kui pead lähtestama ja kõik migratsioonid uuesti käivitama (see kustutab kõik andmed):
php artisan migrate:fresh
Migratsioonide käivitamiseks koos seemneandmetega (kui sinu projektis on seedereid):
php artisan migrate:fresh --seed
Projekti struktuur
Failide asukohtade mõistmine:
├── app/ # Rakenduse kood
│ ├── Http/
│ │ └── Controllers/ # Sinu kontrollerid asuvad siin
│ └── Models/ # Eloquent mudelid
├── config/ # Konfiguratsioonifailid
├── database/
│ ├── migrations/ # Andmebaasi migratsioonid
│ └── seeders/ # Andmebaasi seederid
├── public/ # Avalikud ressursid (CSS, JS, pildid)
├── resources/
│ └── views/ # Blade mallid
├── routes/
│ └── web.php # Veebimarsruudid (URL → Kontroller)
├── .env # Keskkonna konfiguratsioon (DB jne)
└── composer.json # PHP sõltuvused
Levinud ülesanded
Uue kontrolleri loomine
php artisan make:controller ProductController
Uue mudeli loomine koos migratsiooniga
php artisan make:model Product -m
Marsruudi lisamine
Muuda routes/web.php:
Route::get('/products', [ProductController::class, 'index']);
Vahemälu tühjendamine
php artisan cache:clear
php artisan config:clear
php artisan view:clear
Kasulikud käsud
php artisan serve
Käivita kohalik arendusserver
php artisan migrate
Käivita andmebaasi migratsioonid
php artisan migrate:status
Kontrolli migratsioonide olekut
php artisan make:controller
Loo uus kontroller
php artisan make:model -m
Loo mudel koos migratsiooniga
php artisan route:list
Loetle kõik registreeritud marsruudid
php artisan tinker
Interaktiivne PHP shell testimiseks
Tõrkeotsing
SQLSTATE[HY000] [2002] Connection refused
Põhjus: Andmebaasi host on vale või andmebaasiserver pole kättesaadav.
Lahendus: Kontrolli, et DB_HOST sinu .env failis vastaks töölaual näidatud andmebaasi hostile (tavaliselt db.<session-domain>).
SQLSTATE[HY000] [1045] Access denied for user
Põhjus: Vale kasutajanimi või parool.
Lahendus: Kontrolli, et DB_USERNAME ja DB_PASSWORD vastaksid täpselt sellele, mis on töölaual näidatud. Paroolid on tõstutundlikud!
SQLSTATE[HY000] [1049] Unknown database
Põhjus: Andmebaasi nime ei eksisteeri.
Lahendus: Veendu, et DB_DATABASE on seatud sinu kasutajanimele (nt student01). Sinu andmebaas on eelnevalt loodud sama nimega kui sinu kasutajanimi.
No application encryption key has been specified
Põhjus: APP_KEY puudub .env failist.
Lahendus: Käivita php artisan key:generate, et luua uus võti.
Class 'App\Http\Controllers\...' not found
Põhjus: Autoloader ei tea sinu uuest klassist.
Lahendus: Käivita composer dump-autoload, et autoloader uuesti genereerida.
Leht näitab pärast muudatusi vana sisu
Põhjus: Laravel hoiab vaateid või konfiguratsiooni vahemälus.
Lahendus: Tühjenda kõik vahemälud:
php artisan cache:clear
php artisan config:clear
php artisan view:clear
500 Server Error pärast juurutamist
Põhjus: Tavaliselt konfiguratsiooniprobleem või puuduvad sõltuvused.
Lahendus: Kontrolli, et:
.envfail eksisteerib ja sisaldab õigeid väärtusi- APP_KEY on seadistatud (käivita
php artisan key:generate) - Kõik sõltuvused on paigaldatud (
composer install) - Andmebaasi sisselogimisandmed on õiged
Andmebaasi kontrollimine
Saad oma andmebaasi visuaalseks haldamiseks kasutada phpMyAdmini. Klõpsa töölaual nuppu MySQL, et avada phpMyAdmin. Logi sisse samade sisselogimisandmetega, mis on näidatud sinu töölaual.
phpMyAdminist saad:
- Vaadata kõiki migratsioonidega loodud tabeleid
- Sirvida ja muuta andmeid otse
- Käivitada kohandatud SQL-päringuid
- Eksportida/importida andmebaasi andmeid
Juurutamise töövoog
Iga kord, kui saadad koodi Giti, juurutatakse sinu rakendus automaatselt:
Sinu juurutatud rakenduse URL järgib seda formaati:
https://<your-subdomain>-<repo-name>.<session-domain>
Näide: https://student01-module-a.demo.nstrim.app