我的主应用程序文件当前是一系列方法定义,每个都附加到一个路由。我的应用程序有3个不同的部分(main、admin、api)。为了更好的维护,我试图将方法拆分为外部文件,但我喜欢Flask在我的应用程序的URL中使用路由装饰器的简单性。
我的一条路线目前看起来是这样的:
# index.py
@application.route('/api/galleries')
def get_galleries():
galleries = {
"galleries": # get gallery objects here
}
return json.dumps(galleries)
但我想将get_galleries方法提取到一个包含我的API方法的文件中:
import api
@application.route('/api/galleries')
api.get_galleries():
问题是当我这样做的时候我会得到一个错误。这可能吗?如果可能,我该怎么做?
装饰只是一种特殊的功能。
实际上,取决于装饰者做了什么,您可能根本不需要保留结果。
Decorators只是函数,所以您可以执行以下操作:
如其他注释中所述,您可以调用
app.route('/')(api.view_home())
或使用Flask的app.add_url_rule()
http://flask.pocoo.org/docs/api/#flask.Flask.add_url_rule烧瓶的
@app.route()
代码:您可以执行以下操作:
然后:
是我用来分解东西的方法。在自己的文件中定义所有的
urls
,然后在运行app.run()
的__init__.py
中定义import urls
就你而言:
api/url.py
api/视图.py
相关问题 更多 >
编程相关推荐