1
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

appengine_config.pyでパッケージ置き場のパスを通す

※2016年6月21日に書いたブログ記事からの転記です。

App Engineアプリケーションでサードパーティ製のライブラリを使うときは、やはり lib であるとかいったフォルダに整理したくなるわけですが、そうするとパッケージが import を失敗するようになって動かない、なんてことがあります。そういう場合は、appengine_config.py というファイルを使ってパスを通しておくことで解決できます。

Python Module Configuration

「パスを通しておく」というのは、「import するときはココも探しに行くように!」とアプリケーションに予め教えてあげることです。

さて、appengine_config.py の具体的な内容ですが、以下のような記述をします。

import os
import sys

ROOTPATH = os.path.dirname(__file__)
LIBPATH = os.path.join(ROOTPATH, 'lib')
sys.path.append(LIBPATH)

こうしておくと、import の際に lib の中を探しにいくようになります。

この appengine_config.py を保存しておく場所は、app.yaml と同じフォルダ(アプリケーションのルート)です。

つまりこういうことです。

my_app_id/
    app.yaml
    appengine_config.py
    lib/

以上です。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
1
Help us understand the problem. What are the problem?