3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Python:Reflex:VSCodeのDevContainer内でリモートデバッグを設定

Last updated at Posted at 2024-10-30

Refexについて

Reflexは、Pythonだけでフロントエンドも作れるWebアプリ作成ライブラリです。
フロントエンドやバックエンドの実行環境がオールインワンなので開発準備がとても簡単です。

アメリカの大手企業でも使われているようです。

image.png

1.前提条件

  • Poetryを利用してReflexなどのライブラリはインストール済み
  • VSCodeのDevContainerは設定済み
  • Reflexのプロジェクトは作成済み

2.デバッガの起動設定ファイルlaunch.jsonを作成

VSCodeでコンテナを起動し、コンテナ内で以下の操作を行う。

①左のデバッグメニューをクリックし、launch.jsonを作成する。

image.png

②Python Debuggerを選択。

image.png

③Moduleを選択。

image.png

④モジュール名に「reflex」を入力し、Enterキーを押す。

image.png

3.launch.jsonファイルを編集

以下のように記載する。(一例です)

launch.json
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Reflex Debug",
            "type": "debugpy",
            "request": "launch",
            "module": "reflex",
            "cwd": "${workspaceFolder}/app",
            "args": [
                "run",
            ],
            "justMyCode": true,
            "env": {
                "PYTHONPATH":"${PYTHONPATH}:${workspaceFolder}", 
            }
        }
    ]
}

ポイントは以下です。

  • moduleにはreflexを設定
  • cwdにreflexのプロジェクトフォルダを設定
  • argsにはreflexの実行コマンドを設定

上記の設定は、以下のプロジェクトフォルダ内の構成を前提としています。

appがreflexのプロジェクトフォルダです。
screenはアプリフォルダであり、screen.pyがアプリの起動ファイルです。

image.png

3.デバッガ実行

①左のデバッグメニューをクリックし、「Reflex Debug」を実行。

image.png

reflexアプリが起動します。

image.png

②ブレークポイントを設定して、ブラウザからアクセスする。ブレークボイントで止まり、変数の値がダンプされます。

image.png

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?