4

Google App Engine のドキュメントには、純粋な Python で記述されていれば、サード パーティのライブラリをアップロードして使用できると記載されています。

これを行うには、どのような手順を踏む必要がありますか?

4

2 に答える 2

11

私がしたことは、次のようなルート ディレクトリに fix_path.py というファイルを作成することです。

import os
import sys
import jinja2   
# path to lib direcotory
sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'lib'))

次に、lib ディレクトリを作成し、そこにモジュールをドロップします。

たとえば、私は WTForms を使用しています。私のファイル構造は次のようになります。

  • ライブラリ
    • wtforms
  • fix_path.py
  • somefile.py

somefile スクリプトから呼び出す準備ができたら

import fix_path # has to be first.
import wtforms

これが私のgithubソースのこの例です。セットアップについては fix_path.py を、使用法については views.py をチェックアウトしてください。

于 2012-05-18T10:33:21.203 に答える
0

さて、次の手順で同じことを試しました。

  1. lib/__init__.py私のプロジェクトルート、つまりinitファイルでディレクトリ(lib)を作成しました。
  2. 私のモジュール(mymodule.py)を作成し、関数を定義しました

    def myfunc():
        return "mycustomfunction"
    
  3. mymodule を mymodule にインポートしましたmain.py

    from lib import mymodule
    

からの戻り値を使用して、myfunc()それをテンプレート値として jinja2 テンプレートに渡すことができます

同様に、最初の回答で@rjzも指摘したことに従うと、サードパーティのライブラリが単なるモジュールである場合、initファイルを使用してライブラリに保持し、インポートステートメントでインポートできます(ポイント3)。サード パーティのライブラリがパッケージの場合は、プロジェクト ルートに保持し、次のように import ステートメントを使用して再度インポートできますmain.py

from thirdpartypackage import * 
于 2013-05-13T12:31:39.740 に答える