webapp2 - 如何包含库

时间:2017-10-08 15:08:23

标签: python-2.7 webapp2

我正在测试Google Cloud,首先我想在我的PC上开发一些东西,然后再使用谷歌云。 我正在使用APACHE并以这种方式配置它,当我进入页面localhost / wsgi_app时,我看到我的页面实际存储在文件夹/ svc / http / webapp2中。包含我的应用程序的文件wsgi_app.py存储在子文件夹webapp2中。一切正常。我提供这些信息,以防它可能发挥作用。

我遇到的问题是从库导入。 我在Django上做了它,现在尝试将它移动到webapp2。

我的程序的第一行看起来像这样:

import webapp2
import MySQLdb
import json

我有一个名为test.py的文件,其中包含一些classess和funtions。 它与wsgi_app.py位于同一文件夹中。 我想要包含它,但这似乎不起作用:

import webapp2
import MySQLdb
import json
from test import *

我的test.py包含类'Quote'的定义,但是当我调用页面时,我看到错误

NameError: global name 'Quote' is not defined

当我将文件test.py的内部放在wsgi_app.py文件中时,一切正常。 我的目标是将代码分成几个文件。

任何想法:

from test import *

不起作用? 它适用于我写的任何其他程序,为什么不在这里?

1 个答案:

答案 0 :(得分:0)

问题解决了。

问题与weapp2无关,而与WSGI和python搜索文件的路径无关。 最简单的解决方案是添加这样的东西; 的execfile(" /srv/http/test.py") 它将导入文件。

除此之外,这里的文章相当不错 http://blog.dscpl.com.au/2014/09/python-module-search-path-and-modwsgi.html