3.4 KiB
Swagger UI の設定
いくつかの追加の Swagger UI パラメータを設定できます。
設定するには、FastAPI() のアプリオブジェクトを作成するとき、または get_swagger_ui_html() 関数に swagger_ui_parameters 引数を渡します。
swagger_ui_parameters は、Swagger UI に直接渡される設定を含む辞書を受け取ります。
FastAPI はそれらの設定を JSON に変換し、JavaScript と互換にします。Swagger UI が必要とするのはこの形式です。
シンタックスハイライトを無効化
例えば、Swagger UI のシンタックスハイライトを無効化できます。
設定を変更しなければ、シンタックスハイライトはデフォルトで有効です:
しかし、syntaxHighlight を False に設定すると無効化できます:
{* ../../docs_src/configure_swagger_ui/tutorial001_py310.py hl[3] *}
...その場合、Swagger UI ではシンタックスハイライトが表示されなくなります:
テーマの変更
同様に、キー "syntaxHighlight.theme"(途中にドットが含まれている点に注意)でシンタックスハイライトのテーマを設定できます:
{* ../../docs_src/configure_swagger_ui/tutorial002_py310.py hl[3] *}
この設定により、シンタックスハイライトの配色テーマが変わります:
既定の Swagger UI パラメータの変更
FastAPI には、多くのユースケースに適した既定の設定パラメータが含まれています。
既定では次の設定が含まれます:
{* ../../fastapi/openapi/docs.py ln[9:24] hl[18:24] *}
引数 swagger_ui_parameters に別の値を指定することで、これらを上書きできます。
例えば、deepLinking を無効化するには、次の設定を swagger_ui_parameters に渡します:
{* ../../docs_src/configure_swagger_ui/tutorial003_py310.py hl[3] *}
その他の Swagger UI パラメータ
利用可能な他のすべての設定については、公式の Swagger UI パラメータのドキュメントを参照してください。
JavaScript 専用の設定
Swagger UI では、他にも JavaScript 専用 のオブジェクト(例: JavaScript の関数)による設定が可能です。
FastAPI には、次の JavaScript 専用の presets 設定も含まれています:
presets: [
SwaggerUIBundle.presets.apis,
SwaggerUIBundle.SwaggerUIStandalonePreset
]
これらは文字列ではなく JavaScript のオブジェクトであるため、Python のコードから直接渡すことはできません。
そのような JavaScript 専用の設定を使う必要がある場合は、上記のいずれかの方法を使用し、Swagger UI の path operation をオーバーライドして、必要な JavaScript を手動で記述してください。