当在__init__.py中启动api时,Flask-Restful 404

时间:2014-09-05 02:56:13

标签: python flask flask-restful

我正在使用Twilio的flask.ext.restful扩展程序,其中包含以下设置:

顶级文件夹为app

其中包括:___init___.py

from flask import Flask
from flask.ext import restful

# Basic app configuration
app = Flask(__name__)
api = restful.Api(app)

并在此app module内置一个名为api.py

的文件
from flask.ext.restful import Resource
from app import api

class HelloWorld(restful.Resource):
    def get(self):
         return {'hello': 'world'}

api.add_resource(HelloWorld, '/hello')

此设置在访问/hello

时只给了我404

但是,如果我将api.py移到__init__.py模型,那么一切正常。

为什么会这样?

2 个答案:

答案 0 :(得分:0)

我认为应用程序在api.py执行之前就已经运行了,它会在Flask上挂起。你是怎么执行的?

class HelloWorld(restful.Resource)

应该是

class HelloWorld(Resource)

然而

答案 1 :(得分:0)

尝试将from app import api转移到__init__.py

from flask import Flask
from flask.ext import restful

# Basic app configuration
app = Flask(__name__)
api = restful.Api(app)

from app import api

此外,您应重命名其中一个app以避免混淆。