Files
Mimante/Mimante/Documentation/DATABASE_SETTINGS_UI.md
Alberto Balbo 61f0945db2 Supporto PostgreSQL, statistiche avanzate e nuova UI
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.
2026-01-18 17:52:05 +01:00

2.6 KiB

Sezione Configurazione Database - Impostazioni

?? Nota Implementazione

La configurazione del database PostgreSQL è già completamente funzionante tramite:

  1. appsettings.json - Connection strings e configurazione

  2. AppSettings (Utilities/SettingsManager.cs) - Proprietà salvate:

    • UsePostgreSQL
    • PostgresConnectionString
    • AutoCreateDatabaseSchema
    • FallbackToSQLite
  3. 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