Dokumentacija

Vse, kar morate vedeti, da začnete uporabljati Stellar Engine

Hitri začetek

1. Nastavitev baze podatkov
mysql -u root -p database_name < db/schema.sql

To ustvari vseh 12 tabel in vstavi privzete podatke, vključno s skrbniškim uporabnikom.

2. Konfigurirajte okolje
cp .env.example .env# Edit .env with your database credentials
3. Prijavite se s testnimi uporabniki
superadmin / superadmin - Popoln dostop do sistema
admin / admin - Upravljanje uporabnikov in vsebin
moderator / moderator - Samo upravljanje vsebine
user / user - Osnovni dostop
Za produkcijo: izbrišite testne uporabnike in ustvarite varne račune!

Pregled arhitekture

Konfiguracija

  • config/params.php - Vse preklopne funkcije
  • config/web.php - Konfiguracija Yii2
  • .env - Skrivnosti (nikoli ne zavežite!)
  • db/schema.sql - Nastavitev baze podatkov

Pomočniki

  • T::t() - Prevajanje
  • ConfigHelper - nastavitve
  • FlashHelper - Sporočila
  • AdminHelper - RBAC pregledi

Pripomočki

  • ThemeWidget - Preklopnik tem
  • LanguageWidget - Izbirnik jezika
  • NotificationWidget - Ikona zvonca
  • NewsletterWidget - Obrazec za naročanje

Preklopi funkcij

Vsako funkcijo je mogoče vključiti config/params.php:

'features' => [ 'themeSwitching' => true, // Light/dark/system 'rbac' => true, // Role-based access 'translations' => true, // Multi-language 'userLogin' => true, // Auth system 'notifications' => true, // In-app alerts 'fileUpload' => true, // File manager 'maintenance' => true, // Maintenance mode // ... and more],

Shema baze podatkov

userUporabniški računi in avtentikacija
user_oauthPovezave ponudnika OAuth
auth_itemVloge in dovoljenja RBAC
auth_item_childHierarhija vlog
auth_assignmentDodelitev uporabniških vlog
auth_rulePravila poslovanja RBAC
system_settingKonfiguracija ključa in vrednosti
languageRazpoložljivi jeziki
translationPrevajalski nizi
notificationObvestila v aplikaciji
fileNaložene datoteke
activity_logRevizijska sled

Pogosti vzorci

Prevodi
// Simple stringT::t('Welcome');// With placeholderstrtr(T::t('Hello, {name}!'), [ '{name}' => $user->username]);
Hitro sporočila
FlashHelper::success('Saved!');FlashHelper::error('Failed.');FlashHelper::warning('Careful!');FlashHelper::info('Note.');
RBAC pregledi
// In controller/viewif (Yii::$app->user->can('manageUsers')) { // Show admin controls}// Helper shortcutsAdminHelper::isSuperadmin();
Obvestila
NotificationHelper::info( $userId, 'Welcome!', 'Your account is ready.');

Pomembna pravila

Upodabljanje HTML

Vedno uporabljajte pomočnike za Html, nikoli neobdelanega HTML-ja:

Html::tag('div', 'content', ['class' => 'box']);Html::beginTag('div') / Html::endTag('div');
Vsi uporabniški nizi

Ovijte vsak niz, ki je usmerjen k uporabniku, s T::t():

throw new NotFoundHttpException(T::t('Page not found.'));
Nikoli ne zadaj skrivnosti

Ohranite .env v .gitignore. Za ključe API uporabite getenv().

Ste pripravljeni na raziskovanje?

Prebrskaj po vseh funkcijah