# General Translation Python SDKs: m_fallback
URL: https://generaltranslation.com/ja/docs/python/reference/functions/m-fallback.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: General Translation Python で、`msg` からエンコードされたメッセージを復元するか、プレーンな文字列を補間します。m_fallback の API リファレンス。

[`msg`](/docs/python/reference/functions/msg) によって生成された値を処理します。エンコードされたメッセージであればデコードし、そうでなければプレーンな文字列を補間します。値にエンコードされたオプションが含まれる場合と含まれない場合があるときは、レンダリング時にこれを使用します。

## 概要 [#overview]

エンコード済み文字列 (または `None`) と、必要に応じて補間変数を指定して `m_fallback` を呼び出します。入力が有効なエンコード済みメッセージであればデコードされたメッセージを返し、プレーンな文字列であれば補間後の文字列を返し、falsy 値であれば入力をそのまま返します。

```python
from gt_i18n import m_fallback

m_fallback(encoded_message)
```

シグネチャ:

```python
m_fallback(encoded_msg: str | None, **kwargs: object) -> str | None
```

`gt_i18n` から `m_fallback` をインポートしてください。これはフレームワークパッケージでは再エクスポートされません。

## 動作の仕組み [#how-it-works]

* **入力が空の場合。** `encoded_msg` が falsy (`None` や `""` など) であれば、変更せずそのまま返します。
* **エンコード済みかどうかの判定。** オプションをデコードし、それがエンコード済みの翻訳を表しているかどうか (`__hash` と `__source` の両方を含むか) を確認します。
* **デコードまたは補間。** エンコード済みであれば、入力に対して [`decode_msg`](/docs/python/reference/functions/decode-msg) を返します。そうでなければ [`t_fallback`](/docs/python/reference/functions/t-fallback) に委譲し、`kwargs` を使って string を補間します。

## パラメータ [#parameters]

| パラメータ                         | 説明                                                                              | 型             | 任意  | デフォルト |
| ----------------------------- | ------------------------------------------------------------------------------- | ------------- | --- | ----- |
| [`encoded_msg`](#encoded-msg) | エンコードされた [`msg`](/docs/python/reference/functions/msg) の結果、プレーンな文字列、または `None`。 | `str \| None` | いいえ | —     |
| [`kwargs`](#kwargs)           | プレーンな文字列を補間する場合にのみ使用する変数。                                                       | keyword args  | はい  | —     |

### `encoded_msg` [#encoded-msg]

**型** `str | None` · **必須**

解決する対象の値です。エンコードされた [`msg`](/docs/python/reference/functions/msg) の結果、プレーンな文字列、または `None` を指定できます。

### `kwargs` [#kwargs]

**型** キーワード引数 · **任意**

入力がプレーンな文字列の場合にのみ使用される補間変数です。

## 戻り値 [#returns]

**型** `str | None`

デコードされたメッセージ、補間後のプレーンな文字列、またはそのまま返される falsy な入力値。

## 例 [#example]

```python
from gt_i18n import msg, m_fallback

encoded = msg("Save", _context="button")
m_fallback(encoded)              # "Save"
m_fallback("Hello, {name}!", name="Alice")  # "Hello, Alice!"
m_fallback(None)                 # None
```

## Sitemap

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