我在route
中有以下Flask
功能但是当我构建我的应用程序时,链接太多太乱了。
如果我想在单独的文件中分离或分组路由器,我该怎么办?
@app.route('/', methods=['GET'])
def index():
return render_template('index.html')
@app.route('/mylink', methods=['GET'])
def get_mylink():
return render_template('mylink.html')
或者可以package
调整route
rs的大小吗?例如,
import myrouter
myrouter.Run()
答案 0 :(得分:0)
当我的应用程序变得笨拙时,我将路由和功能分成不同的文件,但不完全像你建议/询问的那样。
如果您的应用遵循典型的包结构,并且具有索引和博客页面:
/app
/templates
/blog.html
/index.html
/__init__.py
/models.py
/views.py
然后您可以考虑将views.py
文件转换为名为views
的目录,并为该目录中的每组相关路由创建.py文件。例如:
/app
/templates
/blog.html
/index.html
/views
/blog.py
/main.py
/__init__.py
/models.py
您只需将每组@app.route()
修饰符和相应的函数放入相应的文件中。因此,对于主页,您可以放置此页面和任何其他常规路由(例如登录/注销)
@app.route('/', methods=['GET'])
def index():
return render_template('index.html')
到main.py
目录中的views
。您需要使用app/__init__.py
在from app.views import main, blog
中导入这些内容。并且不要忘记在views目录中包含空白的__init__.py
文件。