构造一个带有angular.js的烧瓶

cco*_*oom 7 flask angularjs

如何使用angular.js前端构建flask应用程序?什么是最佳做法?我是否应该使用像ngnix这样的webserver来托管静态文件,即使我正在进行开发?

烧瓶默认情况下,我可以像下面这样服务index.html:

@app.route('/')
def index():
    return make_response(open('static/index.html').read())
Run Code Online (Sandbox Code Playgroud)

要么

@app.route('/')
def index():
    return send_from_directory('static', 'index.html')
Run Code Online (Sandbox Code Playgroud)

但是,有一个问题,我不能指向没有'../static'前缀的js文件.我只想指出angular.js和所有其他人喜欢:

<script src="lib/angular/angular.js"></script>
Run Code Online (Sandbox Code Playgroud)

<script src="../static/lib/angular/angular.js"></script>
Run Code Online (Sandbox Code Playgroud)

我可以更改烧瓶中的所有静态文件前缀吗?或者有一个很好的方法来解决这个问题?

谢谢.

Ble*_*der 4

如果您确实愿意,您可以:

app = Flask(__name__, static_url_path='')
Run Code Online (Sandbox Code Playgroud)

虽然我只是使用绝对 URL:

/static/lib/angular/angular.js
Run Code Online (Sandbox Code Playgroud)