Aggiornamento massivo: aggiunto backend PostgreSQL per statistiche aste con fallback SQLite, nuovi modelli e servizi, UI moderna con grafici interattivi, refactoring stato applicazione (ApplicationStateService), documentazione completa per deploy Docker/Unraid/Gitea, nuovi CSS e script JS per UX avanzata, template Unraid, test database, e workflow CI/CD estesi. Pronto per produzione e analisi avanzate.
2.6 KiB
2.6 KiB
Sezione Configurazione Database - Impostazioni
?? Nota Implementazione
La configurazione del database PostgreSQL è già completamente funzionante tramite:
-
appsettings.json - Connection strings e configurazione
-
AppSettings (Utilities/SettingsManager.cs) - Proprietà salvate:
UsePostgreSQLPostgresConnectionStringAutoCreateDatabaseSchemaFallbackToSQLite
-
Program.cs - Inizializzazione automatica database
?? UI Settings (Opzionale)
Se si desidera aggiungere una sezione nella pagina Settings.razor per configurare PostgreSQL tramite UI,
le proprietà sono già disponibili nel modello AppSettings.
Esempio Codice UI
<!-- CONFIGURAZIONE DATABASE -->
<div class="card mb-4">
<div class="card-header bg-secondary text-white">
<h5><i class="bi bi-database-fill"></i> Configurazione Database</h5>
</div>
<div class="card-body">
<div class="form-check form-switch mb-3">
<input type="checkbox" class="form-check-input" id="usePostgres" @bind="settings.UsePostgreSQL" />
<label class="form-check-label" for="usePostgres">
Usa PostgreSQL per Statistiche Avanzate
</label>
</div>
@if (settings.UsePostgreSQL)
{
<div class="mb-3">
<label class="form-label">PostgreSQL Connection String:</label>
<input type="text" class="form-control" @bind="settings.PostgresConnectionString" />
</div>
<div class="form-check mb-2">
<input type="checkbox" class="form-check-input" id="autoCreate" @bind="settings.AutoCreateDatabaseSchema" />
<label class="form-check-label" for="autoCreate">
Auto-crea schema se mancante
</label>
</div>
<div class="form-check mb-3">
<input type="checkbox" class="form-check-input" id="fallback" @bind="settings.FallbackToSQLite" />
<label class="form-check-label" for="fallback">
Fallback a SQLite se PostgreSQL non disponibile
</label>
</div>
}
<button class="btn btn-secondary" @onclick="SaveSettings">
Salva Configurazione Database
</button>
</div>
</div>
? Stato Attuale
Il database PostgreSQL funziona perfettamente configurandolo tramite:
appsettings.json(Development)- Variabili ambiente
.env(Production/Docker)
Non è necessaria una UI se la configurazione rimane statica.
Per maggiori dettagli vedi: Documentation/POSTGRESQL_SETUP.md