Flask:想要导入辅助函数文件

时间:2015-07-11 20:24:44

标签: python flask

我正在编写移植基本python脚本并创建类似基本的Flask应用程序。我有一个文件,包含一些我想在Flask应用程序中访问的函数。

到目前为止,这是我的观点:

from flask import render_template
from app import app

def getRankingList():
    return 'hey everyone!'


@app.route("/")
@app.route("/index")
def index():
    rankingsList = getRankingsList()
    return render_template('index.html', rankingsList = rankingsList)

if __name__ == '__main__':
    app.run(debug=True)

理想情况下,我可以访问原始脚本中的所有函数,并在getRankingsList()函数中使用它们。不过,我已经四处搜索,似乎无法理清如何做到这一点。

任何想法

2 个答案:

答案 0 :(得分:10)

只需在主烧瓶.py文件所在的目录中安装另一个python脚本文件(例如helpers.py)。 然后在主烧瓶文件的顶部,您可以import helpers通过在其前面添加helpers.来访问助手中的任何功能(例如helpers.exampleFunction())。 或者您可以from helpers import exampleFunction直接在代码中使用exampleFunction()。或from helpers import *直接导入并使用代码中的所有功能。

答案 1 :(得分:5)

只需像往常一样导入文件并使用其中的功能:

# foo.py

def bar():
    return 'hey everyone!'

在主文件中:

# main.py
from flask import render_template
from app import app
from foo import bar

def getRankingList():
    return 'hey everyone!'


@app.route("/")
@app.route("/index")
def index():
    rankingsList = getRankingsList()
    baz = bar()  # Function from your foo.py
    return render_template('index.html', rankingsList=rankingsList)

if __name__ == '__main__':
    app.run(debug=True)