問題タブ [flask-script]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - manage.py (flask-script) を使用して複数の異なるフラスコ アプリを実行する
Flask アプリをセットアップして、2 つの異なるサイトを実行できるようにしました (サイトはビジネスロジックとデータベース モデルを共有しているため、同じバックエンドを使用しています)。1 つは通常の Web サイトで、もう 1 つはタスクを実行するサイトです (長時間実行されるタスクをセロリに送信するための Web インターフェースです)。
アプリは現在、Flask-Script (manage.py コマンド) を使用して通常の Web サイトを開始していますが、同じスクリプトを使用してタスク サイトも開始したいと考えています。
Flask-Script では、すべてのコマンドが単一のアプリで実行されるプロセスのようです。manage.py に 2 つの異なるアプリを起動させることは可能ですか?
私のコードは次のようになりました。ここで、create_appは Web サイト用の Flask アプリを作成するためのファクトリ関数であり、taskserverは taskserver Web サイトを作成するためのファクトリ関数です。
誰かがmanage.pyスクリプトを適応させてどちらかを開始できるようにする方法を知っていることを願っています.
アップデート:
@Joro Tenev のおかげで、問題は解決しました。最終的に使用したコードは次のとおりです。
さまざまなアプリを起動するには、次を使用します。
flask - Pythonはflask_scriptを見つけることができません
フラスコ スクリプトを使用する基本的な Flask アプリケーションを実行していますが、環境を Cloud 9 から Mac のローカル インストールに移動すると、動作しなくなります。次のエラーが表示されます。
私はvirtualenvを使用しており、環境にフラスコスクリプトをインストールしました。また、このトピックに関する次の投稿で指摘されているように、再インストールを試みました:
Python が dateutil.relativedelta を見つけられません
Python が virtualenv の下に Flask スクリプトを見つけられない
問題を引き起こす私のmanage.pyは次のようになります:
私が走るとき
インストールされているものを確認するために、Flask_Script は次のように表示します。
フラスコスクリプトのドキュメントには、次のようにインポートする必要があると書かれています。
私が理解しているように、これは古い方法であり、私が使用しているものに置き換えられています。とにかく、flask.ext.script を使用しても同じ結果が得られます。
python - コマンドの前に Flask-Script オプションが必要です
ターミナルで次のことを実行したい:
以下のコードで:
管理.py:
ターミナルでコマンドを入力すると、次のようなエラーが表示されます。
そのため、何らかの理由で引数-c
を前に配置する必要があります。runserver
これは小さな問題ですが、すべての引数はコマンドの後に置くのがベスト プラクティスであると想定しました。私の場合、コマンドの前に引数が必要なのはなぜですか? ありがとう。