Požičovňa - Nasadenie
Technický postup nasadenia modulu do existujúceho Laravel projektu. Inštalácia, konfigurácia adries, prepojenie s používateľmi a nastavenie prístupov.
Požiadavky
Modul je Laravel balík, ktorý sa pridáva do existujúceho projektu cez Composer. Nepotrebuje samostatný server ani databázu - používa tú, ktorú projekt už má, a všetky svoje tabuľky si drží pod prefixom rental_.
Hlavné funkcie:
- PHP 8.2 a vyššie
- Laravel 12 alebo 13
- Livewire 3 a Flux Pro pre rozhranie
- Spatie Media Library pre fotky náradia a kategórií
- Ľubovoľná databáza podporovaná Laravelom (MySQL, PostgreSQL, SQLite)
Inštalácia
Po pridaní balíka spustíte inštalačný príkaz. Ten zverejní konfiguračný súbor, spustí migrácie a založí predvolené nastavenia, takže administrácia je hneď použiteľná.
composer require konecne/rental-equipment && php artisan rental:install
Hlavné funkcie:
- Zverejní konfiguráciu do config/rental.php
- Spustí migrácie a vytvorí tabuľky modulu
- Založí predvolené nastavenia cien a rezervácií
- Šablóny vzhľadu sa dajú prebrať do projektu cez vendor:publish --tag=rental-views
Konfigurácia adries a prístupov
V config/rental.php nastavíte, na akých adresách modul beží a aké middleware chránia jeho časti. Prefixy meňte pokojne - všetky odkazy v module sa generujú z konfigurácie, takže sa prepíšu samé.
config/rental.php
Príklady nastavenia:
prefix
Adresa verejného katalógu, predvolene pozicovna
admin_prefix
Adresa administrácie, predvolene pozicovna/admin
admin_middleware
Ochrana administrácie, predvolene web, auth a rental.admin
user_model
Model používateľa projektu, na ktorý sa viažu rezervácie
vite_assets
Cesty k CSS a JS projektu, aby modul používal váš vzhľad
legacy_image_base_url
Základná adresa pre obrázky prenesené zo starého webu
Prepojenie s používateľmi
Aby mal zákazník v profile svoje rezervácie a výpožičky, pridajte do modelu používateľa trait HasRentals. Prístup do administrácie sa riadi metódami isRentalAdmin a isRentalStaff - ak ich model nemá, modul sa vráti k stĺpcom is_admin a is_staff.
use Konecne\RentalEquipment\Traits\HasRentals;
Príklady nastavenia:
HasRentals
Pridá vzťahy rentals a reservations vrátane pomocných metód na aktívne a oneskorené výpožičky
isRentalAdmin()
Vracia true pre správcu s plným prístupom do administrácie
isRentalStaff()
Vracia true pre obsluhu, ktorá smie odovzdávať a preberať náradie
Plánovač a údržba
Jediná pravidelná úloha modulu je odosielanie pripomienok. Pridajte ju do plánovača projektu a nastavte, aby na serveri bežal Laravel scheduler. Nič iné modul na pozadí nepotrebuje.
Schedule::command('rental:send-reminders')->dailyAt('08:00');
Hlavné funkcie:
- Pripomienky vyzdvihnutia a vrátenia raz denne
- Odosielanie e-mailov je vhodné nechať cez frontu, aby nespomaľovalo rezervácie
- Fotky náradia sa ukladajú cez Media Library - podporuje lokálne úložisko aj S3