Javascript 如何从AngularJS访问此Flask global?
我正在使用Flask构建一个内部web应用程序,该应用程序连接到各种集群。95%的URL以/cluster/cluster_name开头,因此我在设计图中使用了以下代码:Javascript 如何从AngularJS访问此Flask global?,javascript,python,angularjs,flask,Javascript,Python,Angularjs,Flask,我正在使用Flask构建一个内部web应用程序,该应用程序连接到各种集群。95%的URL以/cluster/cluster_name开头,因此我在设计图中使用了以下代码: cluster = Blueprint('cluster', __name__, url_prefix='/cluster/<cluster_name>') @cluster.url_defaults def add_cluster_name(endpoint, values): values.setde
cluster = Blueprint('cluster', __name__, url_prefix='/cluster/<cluster_name>')
@cluster.url_defaults
def add_cluster_name(endpoint, values):
values.setdefault('cluster_name', g.cluster_name)
@cluster.url_value_preprocessor
def pull_cluster_name(endpoint, values):
g.cluster_name = values.pop('cluster_name')
这非常有效,允许我在jinja2模板中使用{{g.cluster_name}}
问题是,我正在移动到前端的AngularJS应用程序,因此我不再使用jinja2 templates/render_template()
那么,如何让AngularJS模板可以使用这个全局变量,而不从每个视图返回它的值呢
谢谢。您的视图现在将发送JSON数据,而不是呈现的HTML模板,以便与Angular进行通信。因此,让这些数据在JSON响应中可用
return jsonify(cluster_name=g.cluster_name)
更有可能的是,当你第一次启动Angular应用程序时,你应该只发送默认的和可用的名称,并让它处理其末端的值
发送g.manager
是不可能的,因为它是一个行为(可能)复杂的Python对象,而不是JSON可序列化的对象
return jsonify(cluster_name=g.cluster_name)