我的项目结构是:
/home/giri/couponmonk_project
__init__.py
views.py
__初始化__。PY
from flask import Flask
app = Flask(__name__)
app.debug = True
import couponmonk_project.views
views.py
from couponmonk_project import app
@app.route('/', methods = ['GET'])
def index():
return 'Flask is running!'
当我跑步时:
gunicorn __init__:app -b localhost:8000
来自文件夹/home/giri/couponmonk_project
的
我收到错误:
ImportError: No module named couponmonk_project.views
我尝试添加:
import sys
sys.path.append("/home/giri/couponmonk_project")
到我的__init__.py
文件,但仍然会收到相同的错误。
即使这样做有效,是否正在追加sys.path
正确的做法?
我已经读过,追加到sys
和PYTHONPATH
可能不是解决此问题的最佳方法。
答案 0 :(得分:3)
正如上面的评论所述,你有一个循环依赖。为避免这种情况,您应该将当前的com.test.name=...
作为模块,该模块将由另一个python脚本运行。根据{{3}}你的项目应该是这样的:
couponmonk_project
其中内部文件夹/home/giri/couponmonk_project
__init__.py
/home/giri/couponmonk_project/couponmonk_project
__init__.py
views.py
是您当前的项目,外部文件夹couponmonk_project
是新文件夹。因此,文件couponmonk_project
应该类似于:
/home/giri/couponmonk_project/__init__.py
您的文件from couponmonk_project import app
import couponmonk_project.views
app.run()
是:
/home/giri/couponmonk_project/coupon_monk/project__init__.py