# General Translation Python SDKs: StorageAdapter
URL: https://generaltranslation.com/fr/docs/python/reference/classes/storage-adapter.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: Classe de base abstraite pour le stockage du paramètre régional par requête dans General Translation Python. Référence de l’API pour StorageAdapter.

Sous-classez `StorageAdapter` pour contrôler l’emplacement du paramètre régional actuel (par exemple, dans le contexte de requête d’un framework). L’implémentation par défaut est [`ContextVarStorageAdapter`](/docs/python/reference/classes/context-var-storage-adapter).

## Vue d’ensemble [#overview]

`StorageAdapter` est une [classe de base abstraite](https://docs.python.org/3/library/abc.html) (elle hérite de `abc.ABC`). Elle définit deux méthodes abstraites que vous devez implémenter ; vous ne pouvez pas l’instancier directement.

```python
from gt_i18n import StorageAdapter

class MyAdapter(StorageAdapter):
    def get_item(self, key: str) -> str | None:
        ...

    def set_item(self, key: str, value: str) -> None:
        ...
```

Importez `StorageAdapter` depuis `gt_i18n`. Il n’est pas réexporté par les packages du framework.

## Fonctionnement [#how-it-works]

* **Méthodes abstraites.** `get_item` et `set_item` sont abstraites ; une sous-classe doit implémenter les deux.
* **Clé du paramètre régional.** Le gestionnaire lit et écrit le paramètre régional avec la clé `"locale"`. Un adaptateur peut ignorer les autres clés.
* **Intégration.** Passez un adaptateur personnalisé via `store_adapter` à [`I18nManager`](/docs/python/reference/classes/i18n-manager).

## Méthodes [#members]

| Méthode                        | Description                                     | Valeur renvoyée |
| ------------------------------ | ----------------------------------------------- | --------------- |
| [`get_item`](#member-get-item) | Récupère une valeur stockée à partir de sa clé. | `str \| None`   |
| [`set_item`](#member-set-item) | Stocke une valeur associée à une clé.           | `None`          |

### `get_item(key)` [#member-get-item]

**Abstrait.** Renvoie la valeur stockée pour `key`, ou `None` si la clé est absente.

### `set_item(key, value)` [#member-set-item]

**Abstraite.** Enregistre `value` sous la clé `key`.

## Exemple [#example]

```python
from gt_i18n import StorageAdapter, I18nManager

class DictStorageAdapter(StorageAdapter):
    def __init__(self) -> None:
        self._data: dict[str, str] = {}

    def get_item(self, key: str) -> str | None:
        return self._data.get(key)

    def set_item(self, key: str, value: str) -> None:
        self._data[key] = value

manager = I18nManager(default_locale="en", store_adapter=DictStorageAdapter())
```

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
