5

我正在尝试将一些配置变量从 app.yaml 传递给我的 main.py。我无法从代码中找到访问 app.yaml 的语法。

例如,您希望用户将其客户编号放入 app.yaml 并从 main.py 访问它以传递到 main.html。虽然在 main.py 中创建一个变量来传递它很容易,但似乎最好将它放入 app.yaml 中。

例子:

应用程序.yaml

    application: xyz
    version: 1
    runtime: python27
    ...
    clientID: (ID here)

主文件

    myID = appYAML.clientID
    ...
    values = {'xyz': blah.blah, 'myID': myID }

main.html

    ...
    <script>
      ...
      {% ifequal myID %}
        my_client = {{myID}}
      ...
    </script>
4

3 回答 3

10

在 1.6.5 版本中,App Engine 支持以下内容[1]:

- In your app.yaml file, you can include an env_variables stanza that will set
  the given environment variables in your application's runtime.

有关如何使用它的信息,请访问:https ://cloud.google.com/appengine/docs/python/config/appconfig#Python_app_yaml_Defining_environment_variables 。

于 2012-04-23T20:02:21.517 回答
5

这不受支持,您应该将特定于应用程序的设置放入您自己的 YAML 文件中。

于 2012-04-23T18:59:17.947 回答
3

您可以在app.yaml中定义变量以使它们可用于程序的os.environ字典:

env_variables:
  variable_name: '<YOUR VALUE>'

当你需要在 main.py 中使用这个变量时,你可以这样调用它:

import os
CUSTOM_SETTINGS = os.environ['variable_name']

文档:https ://developers.google.com/appengine/docs/python/config/appconfig#Python_app_yaml_Defining_environment_variables

于 2014-02-05T13:24:03.593 回答