2015-07-12 188 views
5

目录结构:为什么我的视图功能404?

__init__

from flask import flask 

app = Flask(__name__) 


if __name__ == '__main__' 
    app.run() 

浏览:

from app import app 

@app.route('/') 
def hello_world(): 
    return 'Hello World!' 

我希望有人能解释我在做什么错在这里 - 我猜我不理解如何正确导入app。这导致了404.然而,当视图移回到__init__时,一切正常。

回答

6

你需要明确导入views模块在__init__

from flask import flask 

app = Flask(__name__) 
from . import views  

没有导入模块,视图注册都从来没有。

是否将脚本部分保留在包中。在运行开发服务器的Final_app(在app目录之外)中添加一个单独的文件;说run.py

def main(): 
    from app import app 
    app.run() 

if __name__ == '__main__' 
    main() 
+0

我的目录结构是否正确或我缺少其他的东西?我无法导入视图,没有模块命名视图 – Shilo

+0

@Chris_S:当你在'__init__'文件中放置一个脚本时,你的软件包设置确实很复杂。你目前如何使用'python app/__ init __。py'运行服务器? –

+0

是的,init的内容应该在他们自己的文件中? – Shilo

相关问题