すべての GAE アプリケーションで使用できるいくつかのユーティリティを含む Python モジュールがあります。私はそれを自分で作成しました。それは別のフォルダーであり、コードを更新したり、リファクタリングを作成したりすることがあります。作成するすべてのアプリケーションは、このモジュールから関数を使用できます。ここで、アプリケーション内のどこかにモジュール フォルダーをコピーし、その関数をインポートする必要があります。それは普通の手順であり、特別なことではありません。モジュールのコードを更新するとき、アプリケーションに既にインポートされている場合は、このモジュールを上書きする必要があります。次に、GAE ユーティリティを使用してアプリケーションをデプロイするだけで、すべて正常に動作します。問題は - すべてのアプリケーションにモジュールの多くのコピーがなくても、その中のコードを更新するたびにそれらをすべて上書きすることは可能ですか? しかし、1 つの場所に 1 つのコピーがあり、そこから自動的にインポートされますか? Python がモジュールを検索する場所にモジュール コードをコピーできることはわかっています。ただし、GAE 環境にデプロイするときに、このモジュール フォルダーをアプリケーションにコピーする必要があります。そのため、すべてのアプリケーションがローカル PC にあるときにアクセスできるモジュールのコピーが 1 つ必要であり、デプロイ時にそのフォルダーをアプリにコピーする必要があります。良い解決策はありますか?ありがとう。
1 に答える
3
モジュールをすべての GAE アプリの外部にあるディレクトリに保存し、すべての GAE アプリのディレクトリ内にそのディレクトリへのシンボリック リンクを作成できます。appcfg.py
シンボリックリンクをたどります。Python SDK docsからの引用:
アプリケーション ディレクトリ内のモジュールのディレクトリへのシンボリック リンクを作成すると、appcfg.py はそのリンクをたどり、アプリにモジュールを含めます。
于 2011-03-28T12:46:19.963 に答える