os.path._getfullpathname()
macで作業していたら、次のコードがエラーになった。
class MainPage(webapp.RequestHandler): def get(self): #テンプレートページ(index.html)にデータを流し込みつつ表示する page_contents = { 'dateFrom': '2009/10/29', 'dateTo': '2009/10/29' } path = os.path._getfullpathname('../index.html') #ココでエラー self.response.out.write(template.render(path, page_contents, True))
os.pathには、_getfullpathname なんていうメソッドは無いよと。
なので、かわりに、
path = os.path.abspath('../index.html')
としたら動いてる。
os依存ですかね。要注意事項。
ちなみに上記処理がなぜ必要かというと、main.pyの置き場所と、index.htmlの置き場所が違うからなのである。htmlはアプリケーションルート直下に、pyは src というサブフォルダの下に置いている。そのため、相対パスで1階層上にあるindex.htmlを開こうとしている。