Zurück

gt-flask@0.1.0 / gt-fastapi@0.1.0

Ernest McCarter avatarErnest McCarter
gt-flaskgt-fastapigt-i18nv0.1.0pythonflaskfastapii18n

Überblick

Erste Veröffentlichung von gt-flask und gt-fastapi. Sie bringen dasselbe Inline-Übersetzungsmodell, das in gt-next und gt-react verwendet wird, in Python-Webframeworks.

Diese Pakete sind experimentell und können Änderungen enthalten, die nicht abwärtskompatibel sind.

Verwendung

from flask import Flask
from gt_flask import initialize_gt, t

app = Flask(__name__)
initialize_gt(app)

@app.get("/")
def index():
    return {"message": t("Hello, world!")}

@app.get("/greet")
def greet():
    return {"message": t("Hello, {name}!", name=user.name)}

Der Quell-String ist die maßgebliche Referenz. Keine Schlüsseldateien, keine .po-Dateien. t() ermittelt die aktuelle Locale über Framework-Middleware, sucht eine Übersetzung anhand des Hashes, interpoliert Variablen und greift auf den Quell-String zurück, wenn keine Übersetzung vorhanden ist.

Python-spezifische Metadaten-kwargs (_context, _id, _max_chars) übernehmen die Disambiguierung und Constraints mithilfe von Schlüsselwortargumenten mit vorangestelltem Unterstrich.

CLI-Unterstützung

Die GT-CLI extrahiert jetzt t()-Aufrufe aus Python-Quelldateien. Im zugehörigen Dev-Log finden Sie Details zu gt upload und gt translate in Python-Projekten.