]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commitdiff
🌐 Add Japanese translation for Tutorial - Debugging (#2256)
authorT. Tokusumi <41147016+tokusumi@users.noreply.github.com>
Sun, 7 Feb 2021 17:25:31 +0000 (02:25 +0900)
committerGitHub <noreply@github.com>
Sun, 7 Feb 2021 17:25:31 +0000 (18:25 +0100)
Co-authored-by: Sho Nakamura <sh0nk.developer@gmail.com>
docs/ja/docs/tutorial/debugging.md [new file with mode: 0644]
docs/ja/mkdocs.yml

diff --git a/docs/ja/docs/tutorial/debugging.md b/docs/ja/docs/tutorial/debugging.md
new file mode 100644 (file)
index 0000000..35e1ca7
--- /dev/null
@@ -0,0 +1,112 @@
+# デバッグ
+
+Visual Studio CodeやPyCharmなどを使用して、エディター上でデバッガーと連携できます。
+
+## `uvicorn` の実行
+
+FastAPIアプリケーション上で、`uvicorn` を直接インポートして実行します:
+
+```Python hl_lines="1  15"
+{!../../../docs_src/debugging/tutorial001.py!}
+```
+
+### `__name__ == "__main__"` について
+
+`__name__ == "__main__"` の主な目的は、ファイルが次のコマンドで呼び出されたときに実行されるコードを用意することです:
+
+<div class="termy">
+
+```console
+$ python myapp.py
+```
+
+</div>
+
+ただし、次のように、別のファイルからインポートされるときには呼び出されません:
+
+```Python
+from myapp import app
+```
+
+#### より詳しい説明
+
+ファイルの名前が `myapp.py` だとします。
+
+以下の様に実行する場合:
+
+<div class="termy">
+
+```console
+$ python myapp.py
+```
+
+</div>
+
+Pythonによって自動的に作成されたファイル内の内部変数 `__name__` は、値として文字列 `"__main__"` を持ちます。
+
+なので、以下:
+
+```Python
+    uvicorn.run(app, host="0.0.0.0", port=8000)
+```
+
+は実行されます。
+
+---
+
+そのモジュール (ファイル) をインポートした場合は、こうはなりません。
+
+したがって、次のようなもう一つのファイル `importer.py` がある場合:
+
+```Python
+from myapp import app
+
+# Some more code
+```
+
+`myapp.py` 内の自動変数には、値が `"__main __"` の変数 `__name__` はありません。
+
+したがって、以下の行:
+
+```Python
+    uvicorn.run(app, host="0.0.0.0", port=8000)
+```
+
+は実行されません。
+
+!!! info "情報"
+    より詳しい情報は、<a href="https://docs.python.org/3/library/__main__.html" class="external-link" target="_blank">公式Pythonドキュメント</a>を参照してください。
+
+## デバッガーでコードを実行
+
+コードから直接Uvicornサーバーを実行しているため、デバッガーから直接Pythonプログラム (FastAPIアプリケーション) を呼び出せます。
+
+---
+
+例えば、Visual Studio Codeでは、次のことが可能です:
+
+* 「デバッグ」パネルに移動。
+* 「構成の追加...」
+* 「Python」を選択。
+* オプション「`Python: Current File (Integrated Terminal)`」を指定してデバッガーを実行。
+
+すると、**FastAPI** コードでサーバーが起動され、ブレークポイントで停止したりするでしょう。
+
+以下の様な画面になります:
+
+<img src="/img/tutorial/debugging/image01.png">
+
+---
+
+Pycharmを使用する場合、次のことが可能です:
+
+* 「実行」メニューをオープン。
+* オプション「デバッグ...」を選択。
+* 次にコンテキストメニューが表示される。
+* デバッグするファイル (ここでは `main.py`) を選択。
+
+すると、**FastAPI** コードでサーバーが起動され、ブレークポイントで停止したりするでしょう。
+
+以下の様な画面になります:
+
+<img src="/img/tutorial/debugging/image02.png">
index b9c5154f7654c0d65e11cf7941de7fcfcb53a39d..8cc5c88bc584fd5733e04f44ffc1db9f92b411c8 100644 (file)
@@ -67,6 +67,7 @@ nav:
     - tutorial/security/first-steps.md
   - tutorial/middleware.md
   - tutorial/cors.md
+  - tutorial/debugging.md
 - 高度なユーザーガイド:
   - advanced/path-operation-advanced-configuration.md
   - advanced/additional-status-codes.md