gpt4 book ai didi

javascript - 如何在客户端使用 angularjs 并在后端使用 flask 开发 Web 应用程序?

转载 作者:太空狗 更新时间:2023-10-29 22:30:54 30 4
gpt4 key购买 nike

我想开发一个网络应用程序,在服务器端使用 flask(python),在客户端使用 angularjs(javascript)。我查看了 github 上的/flask-angular-seed 项目,但它与/angular-seed 项目相同。它不包含对 flask 框架的任何支持。我是 flask 的新手。如何使 flask 和 Angular 作为服务器客户端一起工作?我知道如何使用 Flask 创建 Web 服务,并且还学习了 Angular 教程。但是我很困惑如何让这两者一起工作(比如应该调用什么 http 请求以及 flask 如何接收和响应它)。

最佳答案

我这样做的方法是为界面(例如/)设置一个路由,它将加载主 html 模板。然后该模板在静态文件夹中引用 angular 应用程序的 js。

然后我为各种交互点(在我的例子中是 rest-y)创建路由,这些交互点也是 Angular 。我使用一个名为 restangular 的 Angular 模块来使它更容易/更清洁。我的路由返回 json 中的所有内容,然后可以直接使用。

我还设置了额外的路由,这样/blah/whatever 也可以路由到主界面。我忽略了路径,一旦加载了 Angular js,路由器( Angular )将查看路径并将其映射到正确的接口(interface)路由。

@app.route('/<path:path>')
@app.route('/')
def admin(path=None):
return render_template('angular_interface.html')

基本上 - 对于界面,我将 flask 完全排除在外。

编辑:文件夹方面你可能有类似的东西:

__init__.py
api
api/__init__.py
api/resources.py
api/views.py
static/interface/css/style.css
static/interface/js/app.js
static/interface/js/other_modules_etc.js
static/shared/js/angular.js
static/shared/js/restangular.js
templates/interface.html

在我的 __init__.py 中,我有上面描述的路由结构(和 Flask 应用程序的东西)。

我的 interface.html 模板如下所示。

<html>
<head>
<title>Blah</title>
<link rel="stylesheet" href="{{ url_for('static', filename='interface/css/style.css') }}"/>
<script src="{{ url_for('static', filename='shared/js/angular.js') }}"></script>
<script src="{{ url_for('static', filename='shared/js/restangular.js') }}"></script>
<script src="{{ url_for('static', filename='interface/js/app.js') }}"></script>
</head>
<body>
{% raw %}
<div ng-app="blah" ng-cloak>
<div ng-controller="BlahCtrl" class="sidebar">
</div>
</div>
{% endraw %}
</body>
</html>

关于javascript - 如何在客户端使用 angularjs 并在后端使用 flask 开发 Web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18872240/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com