# python: Almacenamiento local de traducciones URL: https://generaltranslation.com/es/docs/python/guides/local-tx.mdx --- title: Almacenamiento local de traducciones description: Guarda las traducciones localmente en lugar de obtenerlas desde una CDN --- ## ¿Qué son las traducciones locales? De forma predeterminada, las bibliotecas de Python de GT obtienen las traducciones desde la CDN de General Translation en tiempo de ejecución. Con las traducciones locales, incluyes archivos de traducción en tu aplicación, sin necesidad de hacer solicitudes de red externas. **Comportamiento predeterminado:** GT usa almacenamiento en CDN de forma predeterminada. Cambia al almacenamiento local solo si necesitas las ventajas específicas que ofrece. ## Consideraciones ### Beneficios de las traducciones locales * **Respuestas más rápidas**: No se requieren viajes de ida y vuelta por la red para obtener las traducciones * **Sin dependencia de servicios externos**: Tu aplicación funciona independientemente de la disponibilidad de la CDN * **Funciona sin conexión**: Las traducciones forman parte de tu deployment ### Desventajas de las traducciones locales * **Aumento del tamaño del deployment**: Cada configuración regional compatible agrega archivos de traducción * **Volver a implementar para actualizar**: Cambiar una traducción requiere un nuevo deployment ## Configuración ### Paso 1: Configura la CLI Instala la CLI de GT y configúrala para el almacenamiento local: ```bash pip install gtx-cli gt configure ``` Cuando se te indique: * **¿Guardar en el CDN?** Selecciona "No" * **Directorio de traducciones:** Introduce `./translations` ### Paso 2: Genera las traducciones ```bash gt translate ``` Esto crea archivos JSON en tu directorio `translations/` — uno por cada configuración regional. ### Paso 3: Carga las traducciones en tu aplicación Configura tu aplicación para que use los archivos de traducción locales: ```python import json from pathlib import Path from flask import Flask from gt_flask import initialize_gt app = Flask(__name__) def load_translations(locale: str): path = Path('translations') / f'{locale}.json' if path.exists(): return json.loads(path.read_text()) return {} initialize_gt( app, default_locale='en', locales=['es', 'fr', 'ja'], load_translations=load_translations, ) ``` ```python import json from pathlib import Path from fastapi import FastAPI from gt_fastapi import initialize_gt app = FastAPI() def load_translations(locale: str): path = Path('translations') / f'{locale}.json' if path.exists(): return json.loads(path.read_text()) return {} initialize_gt( app, default_locale='en', locales=['es', 'fr', 'ja'], load_translations=load_translations, ) ``` ## Integración con la construcción Genera traducciones como parte de tu flujo de deployment: ```yaml title=".github/workflows/deploy.yml" - name: Generate Translations run: gt translate - name: Deploy run: ``` O en un `Makefile`: ```makefile deploy: gt translate ``` Genera siempre las traducciones antes de implementar. Si faltan archivos de traducción, `t()` recurre a la cadena original de tu `default_locale`. ## Siguientes pasos * [Comando `translate` de la CLI](/docs/cli/translate) — referencia para la generación de traducciones * [Patrones de traducción de cadenas](/docs/python/guides/strings) — cómo traducir contenido * [Detección de la configuración regional y middleware](/docs/python/guides/middleware) — cómo funciona el contexto de la configuración regional