# python: initialize_gt URL: https://generaltranslation.com/it/docs/python/api/initialize-gt.mdx --- title: initialize_gt description: Riferimento API della funzione di setup initialize_gt --- ## Panoramica La funzione `initialize_gt` configura General Translation per un'app Flask o FastAPI. Deve essere chiamata una sola volta prima di utilizzare qualsiasi funzione di traduzione. Le impostazioni vengono caricate automaticamente da un file `gt.config.json` nella directory di lavoro corrente. Gli argomenti con nome specificati sovrascrivono i valori del file di configurazione. ```python from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) initialize_gt(app) ``` ```python from fastapi import FastAPI from gt_fastapi import initialize_gt app = FastAPI() initialize_gt(app) ``` ## Riferimento ### Parametri str', optional: true, description: "Callback personalizzata per il rilevamento dell'impostazione regionale. Per impostazione predefinita, analizza l'header Accept-Language.", }, "load_translations?": { type: '(locale: str) -> dict[str, str]', optional: true, description: "Funzione personalizzata per caricare le traduzioni per un'impostazione regionale.", }, "eager_loading?": { type: 'bool', optional: true, default: 'True', description: "Carica tutte le traduzioni all'avvio.", }, "config_path?": { type: 'str', optional: true, description: 'Percorso di un file gt.config.json. Per impostazione predefinita, usa "gt.config.json" nella directory di lavoro corrente.', }, "load_config?": { type: '(path: str | None) -> GTConfig', optional: true, description: 'Loader di configurazione personalizzato che sostituisce quello predefinito.', }, }} /> ### Restituisce `I18nManager` — l'istanza configurata del gestore della traduzione. *** ## File di configurazione Crea un file `gt.config.json` nella directory principale del progetto. Tutti i campi sono facoltativi: ```json title="gt.config.json" { "projectId": "your-project-id", "defaultLocale": "en", "locales": ["es", "fr"], "cacheUrl": "https://custom-cache.example.com" } ``` Le impostazioni di `gt.config.json` vengono usate come valori predefiniti. Gli eventuali argomenti con nome passati a `initialize_gt` hanno la precedenza. *** ## Esempi ### Setup minimo (con file di configurazione) ```python from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) initialize_gt(app) ``` ### Con un loader di traduzione personalizzato ```python from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) def load_translations(locale: str) -> dict[str, str]: # Carica le traduzioni dalla tua sorgente ... initialize_gt(app, load_translations=load_translations) ``` ### Con il rilevamento personalizzato dell'impostazione regionale ```python from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) def get_locale(request): return request.args.get("lang", "en") initialize_gt(app, get_locale=get_locale) ``` *** ## Note * `initialize_gt` deve essere chiamata **una sola volta** prima di usare `t` o qualsiasi altra funzione di traduzione. * In Flask, registra un Hook `before_request` per il rilevamento dell'impostazione regionale. * In FastAPI, registra un middleware per il rilevamento dell'impostazione regionale e avvolge il ciclo di vita dell'app per il caricamento anticipato.